############################################################################### # # # IPFire.org - A linux based firewall # # Copyright (C) 2007-2024 IPFire Team # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # This program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # # # ############################################################################### ############################################################################### # Definitions ############################################################################### include Config VER = 4.19.5 SUMMARY = A SMB/CIFS File, Print, and Authentication Server THISAPP = samba-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = samba PAK_VER = 99 DEPS = avahi cups perl-Parse-Yapp perl-JSON SERVICES = samba ############################################################################### # Top-level Rules ############################################################################### objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) $(DL_FILE)_BLAKE2 = 0f0081380ad459cca914e5e4cf505a4783ce97f0fb8c0471a6e558c747c16b0b327e545358265f365599c3807540985bcddb68aa67d14136cee4dbcb5158090c install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) download :$(patsubst %,$(DIR_DL)/%,$(objects)) b2 : $(subst %,%_BLAKE2,$(objects)) dist: @$(PAK) ############################################################################### # Downloading, checking, b2sum ############################################################################### $(patsubst %,$(DIR_CHK)/%,$(objects)) : @$(CHECK) $(patsubst %,$(DIR_DL)/%,$(objects)) : @$(LOAD) $(subst %,%_BLAKE2,$(objects)) : @$(B2SUM) ############################################################################### # Installation Details ############################################################################### $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && ./configure \ --prefix=/usr \ --libdir=/usr/lib/ \ --sysconfdir=/var/ipfire \ --localstatedir=/var \ --without-ad-dc \ --with-cachedir=/var/lib/samba \ --with-lockdir=/var/lib/samba \ --with-piddir=/var/run \ --with-ads \ --with-acl-support \ --with-sendfile-support \ --with-winbind \ --enable-avahi \ --enable-cups \ --enable-fhs \ --with-syslog \ --without-smb1-server cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install -mkdir -p /var/ipfire/samba cd $(DIR_APP)/source3 && install -v -m644 ../examples/smb.conf.default /var/ipfire/samba cp -vrf $(DIR_SRC)/config/samba/* /var/ipfire/samba/ chown nobody:nobody -R /var/ipfire/samba/ cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf rm -rf /var/lib/samba/private ln -s /var/ipfire/samba/private /var/lib/samba/private install -v -m 644 $(DIR_SRC)/config/backup/includes/samba /var/ipfire/backup/addons/includes/samba -mkdir -p /var/lib/samba/winbindd_privileged chmod 750 /var/lib/samba/winbindd_privileged chgrp wbpriv /var/lib/samba/winbindd_privileged # Create spool directory for print jobs mkdir -p /var/spool/samba chmod -v 1777 /var/spool/samba/ # Install password change helper script install -m 755 $(DIR_SRC)/config/samba/samba-change-password /usr/sbin/samba-change-password #install initscripts $(call INSTALL_INITSCRIPTS,$(SERVICES)) @rm -rf $(DIR_APP) @$(POSTBUILD)