commit | author | age
|
946865
|
1 |
# |
AP |
2 |
# CDDL HEADER START |
|
3 |
# |
|
4 |
# The contents of this file are subject to the terms of the |
|
5 |
# Common Development and Distribution License (the "License"). |
|
6 |
# You may not use this file except in compliance with the License. |
|
7 |
# |
|
8 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
|
9 |
# or http://www.opensolaris.org/os/licensing. |
|
10 |
# See the License for the specific language governing permissions |
|
11 |
# and limitations under the License. |
|
12 |
# |
|
13 |
# When distributing Covered Code, include this CDDL HEADER in each |
|
14 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
|
15 |
# If applicable, add the following below this CDDL HEADER, with the |
|
16 |
# fields enclosed by brackets "[]" replaced with your own identifying |
|
17 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
|
18 |
# |
|
19 |
# CDDL HEADER END |
|
20 |
# |
|
21 |
|
|
22 |
# |
123758
|
23 |
# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved. |
389a70
|
24 |
# Copyright (c) 2017, Ken Mays |
7ffa83
|
25 |
# Copyright (c) 2019, Michal Nowak |
465ad4
|
26 |
# Copyright (c) 2020, Nona Hansel |
a1c2c3
|
27 |
# Copyright (c) 2022-2023 Niklas Poslovski |
946865
|
28 |
# |
AP |
29 |
|
|
30 |
include ../../../make-rules/shared-macros.mk |
|
31 |
|
|
32 |
COMPONENT_NAME= vim |
e8f9bc
|
33 |
COMPONENT_VERSION= 9.1.26 |
AW |
34 |
HUMAN_VERSION= 9.1.0026 |
6a0a17
|
35 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(HUMAN_VERSION) |
389a70
|
36 |
COMPONENT_PROJECT_URL= https://www.vim.org/ |
946865
|
37 |
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz |
6a0a17
|
38 |
COMPONENT_ARCHIVE_URL= https://github.com/vim/vim/archive/v$(HUMAN_VERSION).tar.gz |
e8f9bc
|
39 |
COMPONENT_ARCHIVE_HASH= sha256:994834967fa85cdd4cc9efb052e96d60672fafc062deb8698b482787b73efad6 |
946865
|
40 |
|
465ad4
|
41 |
include $(WS_MAKE_RULES)/common.mk |
946865
|
42 |
|
4c11f5
|
43 |
COMPONENT_POST_UNPACK_ACTION += ( \ |
AW |
44 |
chmod +x $(@D)/configure $(@D)/src/auto/configure $(@D)/src/configure $(@D)/src/mkinstalldirs ; \ |
|
45 |
find $(@D) -name \*.sh -exec chmod +x '{}' ';' ; \ |
|
46 |
rm $(@D)/src/po/{ko.po,zh_CN.po} ; ) |
946865
|
47 |
|
82cf06
|
48 |
NOX_VARIANT = $(BUILD_DIR)/$(MACH64)-vim |
123758
|
49 |
X_VARIANT = $(BUILD_DIR)/$(MACH64)-gvim |
946865
|
50 |
|
82cf06
|
51 |
VARIANTS = $(X_VARIANT) $(NOX_VARIANT) |
946865
|
52 |
|
82cf06
|
53 |
$(VARIANTS:%=%/.configured): BITS=64 |
946865
|
54 |
|
82cf06
|
55 |
BUILD_64 = $(VARIANTS:%=%/.built) |
AW |
56 |
INSTALL_64 = $(VARIANTS:%=%/.installed) |
123758
|
57 |
# Test only the terminal variant. |
82cf06
|
58 |
TEST_64 = $(NOX_VARIANT)/.tested |
946865
|
59 |
|
AP |
60 |
# vim uses self-defined INFINITY/NAN, which don't work well on illumos |
4c11f5
|
61 |
CFLAGS += -std=c99 $(XPG6MODE) |
1114cc
|
62 |
|
82cf06
|
63 |
CONFIGURE_ENV += PATH=$(PATH.gnu) |
123758
|
64 |
# Make sure we use a 64-bit, multithreaded perl |
4c11f5
|
65 |
CONFIGURE_ENV += vi_cv_path_perl=/usr/perl5/bin/perl |
123758
|
66 |
# Vim's configure script looks for a "python3" executable, per PEP 394 |
82cf06
|
67 |
CONFIGURE_ENV += vi_cv_path_python3=/usr/bin/python$(PYTHON_VERSION) |
946865
|
68 |
# zh_CN.cp936.po has invalid characters which GNU msgfmt seems to be able to ignore. |
82cf06
|
69 |
CONFIGURE_ENV += MSGFMT=gmsgfmt |
946865
|
70 |
|
82cf06
|
71 |
CONFIGURE_OPTIONS += --with-features=huge |
AW |
72 |
CONFIGURE_OPTIONS += --with-compiledby="oi-userland build environment" |
|
73 |
CONFIGURE_OPTIONS += --with-modified-by="OpenIndiana <oi-dev@openindiana.org>" |
|
74 |
CONFIGURE_OPTIONS += --enable-luainterp=dynamic |
|
75 |
CONFIGURE_OPTIONS += --enable-perlinterp=dynamic |
|
76 |
CONFIGURE_OPTIONS += --enable-rubyinterp=dynamic |
|
77 |
CONFIGURE_OPTIONS += --with-ruby-command=/usr/bin/ruby26 |
|
78 |
CONFIGURE_OPTIONS += --enable-pythoninterp=dynamic |
|
79 |
CONFIGURE_OPTIONS += --enable-python3interp=dynamic |
|
80 |
CONFIGURE_OPTIONS += --enable-terminal |
946865
|
81 |
|
AP |
82 |
# We build two variants: with and without X support. |
82cf06
|
83 |
$(NOX_VARIANT)/.configured: CONFIGURE_OPTIONS += --without-x |
AW |
84 |
$(NOX_VARIANT)/.configured: CONFIGURE_OPTIONS += --disable-gui |
|
85 |
$(NOX_VARIANT)/.configured: CONFIGURE_OPTIONS += --disable-gtktest |
|
86 |
$(NOX_VARIANT)/.configured: CONFIGURE_OPTIONS += --disable-canberra |
123758
|
87 |
$(X_VARIANT)/.configured: CONFIGURE_OPTIONS += --with-vim-name=gvim |
MN |
88 |
$(X_VARIANT)/.configured: CONFIGURE_OPTIONS += --with-x |
|
89 |
$(X_VARIANT)/.configured: CONFIGURE_OPTIONS += --enable-gui=gtk3 |
|
90 |
$(X_VARIANT)/.configured: CONFIGURE_OPTIONS += --enable-gtk3-check |
|
91 |
$(X_VARIANT)/.configured: CONFIGURE_OPTIONS += --enable-canberra |
946865
|
92 |
|
AP |
93 |
# Vim's build is too smart for itself and configure can't run outside of a |
|
94 |
# complete source tree. |
123758
|
95 |
COMPONENT_PRE_CONFIGURE_ACTION = ($(CLONEY) $(SOURCE_DIR) $(@D) ; cd $(@D)/src ; aclocal ; autoconf ; ) |
946865
|
96 |
|
AP |
97 |
# For the GUI, install only the executable itself. |
|
98 |
$(X_VARIANT)/.installed: COMPONENT_INSTALL_ARGS += -C src |
|
99 |
$(X_VARIANT)/.installed: COMPONENT_INSTALL_TARGETS = installvimbin |
|
100 |
|
|
101 |
COMPONENT_TEST_TARGETS = test |
|
102 |
|
|
103 |
$(SOURCE_DIR)/runtime/doc/uganda.txt: prep |
|
104 |
|
|
105 |
$(BUILD_DIR)/license: $(SOURCE_DIR)/runtime/doc/uganda.txt |
|
106 |
nawk '/begin of license/ {p=1; getline; next} /end of license/ {p=0} p == 1 {print}' $< > $@ |
|
107 |
|
123758
|
108 |
install: $(INSTALL_64) $(BUILD_DIR)/license |
946865
|
109 |
|
1114cc
|
110 |
# Manually added build dependencies |
365c83
|
111 |
PYTHON_REQUIRED_PACKAGES += runtime/python |
55bcea
|
112 |
|
123758
|
113 |
# Auto-generated dependencies |
MN |
114 |
REQUIRED_PACKAGES += library/desktop/cairo |
946865
|
115 |
REQUIRED_PACKAGES += library/desktop/gdk-pixbuf |
123758
|
116 |
REQUIRED_PACKAGES += library/desktop/gtk3 |
946865
|
117 |
REQUIRED_PACKAGES += library/desktop/pango |
123758
|
118 |
REQUIRED_PACKAGES += library/desktop/xdg/libcanberra |
946865
|
119 |
REQUIRED_PACKAGES += library/glib2 |
AP |
120 |
REQUIRED_PACKAGES += library/ncurses |
55bcea
|
121 |
REQUIRED_PACKAGES += library/security/libsodium |
AW |
122 |
REQUIRED_PACKAGES += shell/ksh93 |
946865
|
123 |
REQUIRED_PACKAGES += system/library |
AP |
124 |
REQUIRED_PACKAGES += system/library/math |
|
125 |
REQUIRED_PACKAGES += x11/library/libice |
|
126 |
REQUIRED_PACKAGES += x11/library/libsm |
|
127 |
REQUIRED_PACKAGES += x11/library/libx11 |
|
128 |
REQUIRED_PACKAGES += x11/library/toolkit/libxt |