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.
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.
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]
23 # Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
24 # Copyright 2023,2024 Friedrich Kink. All rights reserved.
29 include ..
/..
/..
/make-rules
/shared-macros.mk
32 COMPONENT_VERSION
= 4.21.2
33 COMPONENT_SUMMARY
= A library that permits GPLv2 applications to manipulate CIFS
/SMB network resources
34 COMPONENT_PROJECT_URL
= https
://www.samba.org
/
35 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
36 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.gz
37 COMPONENT_ARCHIVE_HASH
= sha256
:bde66be3d2025cb949de38518ad2652f3795f824c7fa89d4e443ede1ae828ea6
38 COMPONENT_ARCHIVE_URL
= https
://download.samba.org
/pub
/samba
/stable
/$(COMPONENT_ARCHIVE
)
39 #COMPONENT_SIG_URL = https://download.samba.org/pub/samba/stable/$(COMPONENT_SRC).tar.asc
40 COMPONENT_FMRI
= library
/samba
/libsmbclient
41 COMPONENT_CLASSIFICATION
= System
/Libraries
42 COMPONENT_LICENSE
= GPLv3
43 COMPONENT_LICENSE_FILE
= COPYING
45 TEST_TARGET
= $(NO_TESTS
)
46 include $(WS_MAKE_RULES
)/common.mk
49 WAF
= PYTHONHASHSEED
=1 $(PYTHON
) $(SOURCE_DIR
)/buildtools
/bin
/waf
52 CFLAGS
+= -std
=c17
-D_POSIX_PTHREAD_SEMANTICS
-DHAVE_AUXV_T
-DHCRYPTO_DEF_PROVIDER
=hcrypto
54 LDFLAGS
+= -R
/usr
/lib
/libsmbclient
55 LDFLAGS
+= -R
/usr
/lib
/libsmbclient
/private
57 LDFLAGS
+= -lrt
-lsec
-lcrypt
-lmd5
-lsocket
-lnsl
-lsendfile
58 LDFLAGS
+= -lldap-2.6
-lsendfile
-lavahi-common
-lavahi-core
60 CPPFLAGS
+= $(CPP_LARGEFILES
) $(CPP_XPG6MODE
)
61 CPPFLAGS
+= -I
/usr
/include/openldap
-I
/usr
/include/jansson
63 # Flag is not picked up for lib/replace
66 LD_OPTIONS
+= -B direct
68 # to avoid a clash with system gssapi.h (some declaration are not compatible)
69 COMPONENT_POST_CONFIGURE_ACTION
= ( \
70 $(RM
) $(@D
)/third_party
/heimdal
/lib
/gssapi
/gssapi.h
; \
73 CONFIGURE_PREFIX
= /usr
/lib
/libsmbclient
75 # !!! Note, this is not a configure.mk-based Makefile !!!
76 # --enable-fhs should not be on
77 CONFIGURE_OPTIONS
+= --prefix=$(CONFIGURE_PREFIX
)
78 CONFIGURE_OPTIONS
+= --exec-prefix
=$(CONFIGURE_PREFIX
)
79 CONFIGURE_OPTIONS
+= --bindir=$(CONFIGURE_PREFIX
)/bin
80 CONFIGURE_OPTIONS
+= --sbindir
=$(CONFIGURE_PREFIX
)/sbin
81 CONFIGURE_OPTIONS
+= --libdir=$(CONFIGURE_PREFIX
)
82 CONFIGURE_OPTIONS
+= --with-privatelibdir
=$(CONFIGURE_PREFIX
)/private
83 CONFIGURE_OPTIONS
+= --sysconfdir
=$(ETCDIR
)/samba
84 CONFIGURE_OPTIONS
+= --with-pammodulesdir
=$(CONFIGURE_PREFIX
)/security
85 CONFIGURE_OPTIONS
+= --datarootdir
=$(CONFIGURE_PREFIX
)
86 CONFIGURE_OPTIONS
+= --mandir=$(USRSHAREMANDIR
)
87 CONFIGURE_OPTIONS
+= --htmldir
=/usr
/share
/samba
/swat
/help
88 CONFIGURE_OPTIONS
+= --includedir=$(USRINCDIR
)/libsmbclient
89 CONFIGURE_OPTIONS
+= --with-privatedir
=$(ETCDIR
)/samba
/private
90 CONFIGURE_OPTIONS
+= --localstatedir
=$(VARDIR
)/samba
91 CONFIGURE_OPTIONS
+= --with-logfilebase
=$(VARDIR
)/samba
/log
92 CONFIGURE_OPTIONS
+= --sharedstatedir
=$(VARDIR
)/samba
/com
93 CONFIGURE_OPTIONS
+= --libexecdir
=$(CONFIGURE_PREFIX
)/libexec
94 CONFIGURE_OPTIONS
+= --with-bind-dns-dir
=$(CONFIGURE_PREFIX
)/bind-dns
96 CONFIGURE_OPTIONS
+= --with-static-modules
=
97 CONFIGURE_OPTIONS
+= --with-shared-modules
=
98 CONFIGURE_OPTIONS
+= --with-ads
99 CONFIGURE_OPTIONS
+= --with-winbind
100 CONFIGURE_OPTIONS
+= --with-ldap
101 CONFIGURE_OPTIONS
+= --nopyo
102 CONFIGURE_OPTIONS
+= --disable-rpath
103 CONFIGURE_OPTIONS
+= --disable-rpath-private-install
104 CONFIGURE_OPTIONS
+= --bundled-libraries
=ALL
105 CONFIGURE_OPTIONS
+= --disable-python
106 CONFIGURE_OPTIONS
+= --without-ad-dc
107 CONFIGURE_OPTIONS
+= --disable-spotlight
109 CONFIGURE_ENV
+= CPP
="$(CC) -E"
110 CONFIGURE_ENV
+= CPPFLAGS
="$(CPPFLAGS)"
111 CONFIGURE_ENV
+= CUPS_CONFIG
=$(USRBINDIR
)/cups-config
112 CONFIGURE_ENV
+= PATH
=$(GNUBIN.
$(BITS
)):$(USRBINDIR.
$(BITS
)):$(PATH.gnu
)
114 # Auto-generated dependencies
115 REQUIRED_PACKAGES
+= $(ICU_LIBRARY_PKG
)
116 REQUIRED_PACKAGES
+= database
/lmdb
117 REQUIRED_PACKAGES
+= library
/file-monitor
/gamin
118 REQUIRED_PACKAGES
+= library
/gnutls-3
119 REQUIRED_PACKAGES
+= library
/jansson
120 REQUIRED_PACKAGES
+= library
/openldap
121 REQUIRED_PACKAGES
+= library
/print/cups-libs
122 REQUIRED_PACKAGES
+= library
/zlib
123 REQUIRED_PACKAGES
+= system
/library
124 REQUIRED_PACKAGES
+= system
/network
/avahi