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.
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.
12 # Copyright 2013, Adam Stevko. All rights reserved.
13 # Copyright 2015-2016, Jim Klimov
14 # Copyright 2022, Till Wegmueller
18 include ..
/..
/..
/make-rules
/shared-macros.mk
20 COMPONENT_NAME
= tuntap
21 COMPONENT_VERSION
= 1.3.3
22 COMPONENT_LICENSE
= GPLv2
23 COMPONENT_GIT_REV
= 10850b5
24 COMPONENT_SRC
= kaizawa-
$(COMPONENT_NAME
)-$(COMPONENT_GIT_REV
)
25 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.gz
26 COMPONENT_ARCHIVE_HASH
= sha256
:83d095060905196826ed7fa133b24b6ae62b9ecbc219383261eeaf890c243179
27 COMPONENT_PROJECT_URL
= http
://www.whiteboard.ne.jp
/~admin2
/tuntap
/
28 COMPONENT_ARCHIVE_URL
= https
://codeload.github.com
/kaizawa
/$(COMPONENT_NAME
)/legacy.
tar.gz
/$(COMPONENT_GIT_REV
)
29 COMPONENT_CLASSIFICATION
= Drivers
/Networking
30 COMPONENT_DESCRIPTION
= tuntap is a Virtual Point-to-Point network device
: \
31 a TAP driver for OpenIndiana that can be used for \
32 OpenVPN
, OpenConnect
, wireguard
(tailscale
) and vpnc. The code is based on the \
33 Universal TUN
/TAP driver. Some changes were made and code added \
34 for supporting Ethernet tunneling feature
, since the Universal \
35 TUN
/TAP driver for Solaris only supports IP tunneling known
as TUN.
37 include $(WS_MAKE_RULES
)/common.mk
39 COMPONENT_PREP_ACTION
= \
40 (cd
$(@D
) && autoreconf
-fiv
)
42 COMPONENT_PRE_CONFIGURE_ACTION
= $(CLONEY
) $(SOURCE_DIR
) $(@D
)
44 CFLAGS
+= $(CPP_LARGEFILES
)
45 # Ensure that the standard function prologue remains at the very start of a
46 # function, so DTrace fbt will instrument the right place.
47 CFLAGS
+= -fno-shrink-wrap
49 # Build the kernel module with retpolines and other settings that are used in
51 CFLAGS
+= -ffreestanding
52 CFLAGS
+= -mcmodel
=kernel
55 CFLAGS
+= -mno-red-zone
56 CFLAGS
+= -mindirect-branch
=thunk-extern
57 CFLAGS
+= -mindirect-branch-register
59 LDFLAGS
+= $(LD_Z_DEFS
) $(LD_Z_TEXT
) -lpthread
61 CONFIGURE_OPTIONS
.32 += --disable-64bit
62 CONFIGURE_OPTIONS
.64 += --enable-64bit
64 # Auto-generated dependencies