###########################################################################
#
# Makefile for the Linux NetBEUI.
#
# Copyright (c) 1999 by Procom Technology,Inc.
#
# This program can be redistributed or modified under the terms of the 
# GNU General Public License as published by the Free Software Foundation.
# This program is distributed without any warranty or implied warranty
# of merchantability or fitness for a particular purpose.
#
# See the GNU General Public License for more details.
#
###########################################################################
 
# The installation shell script
PKG_DIR 	:= `pwd`
INST_SCRIPT 	:= $(PKG_DIR)/scripts/doinst.sh
UNINST_SCRIPT 	:= $(PKG_DIR)/scripts/uninst.sh
SMB_PATCH	:= $(PKG_DIR)/scripts/smb_ptch.sh
UTIL_DIR	:= $(PKG_DIR)/source/utils

###########################################################################
# Specify your kernel directory source path here.
###########################################################################
KERNEL_DIR 	:= /usr/src/linux

KERNEL_VER	:= `cat $(KERNEL_DIR)/include/linux/version.h 2>/dev/null | \
			grep UTS_RELEASE | cut -f3 -d' '`

###########################################################################
# Specify your SAMBA directory source path here.
###########################################################################
SAMBA_DIR 	:= /usr/local/samba

###########################################################################
# You MUST uncomment one of the following for your SAMBA version
###########################################################################
# SAMBA_VER 	:= "1.9.xx"
# SAMBA_VER 	:= "2.0.xx"

default:
	@echo "NetBEUI installation - Copyright (c) 1999 by Procom Technology,Inc."
	@echo "make world		Installs NetBEUI and makes everything"
	@echo "make install		Installs NetBEUI completely"
	@echo "make clean		Cleans NetBEUI completely"
	@echo "make install_netbeui	Adds NetBEUI to the KERNEL only"
	@echo "make install_smb 	Adds NetBEUI to the SAMBA only"
	@echo "make install_utils	Makes and installs NetBEUI utilities."
	@echo "make clean_netbeui	Cleans NetBEUI from KERNEL only"
	@echo "make clean_smb		Cleans NetBEUI from SAMBA only"
	@echo "make clean_utils 	Cleans NetBEUI utilities only"
	@echo "make clean_all		Cleans NetBEUI, kernel and SAMBA"
	@echo "make config_smb		Configures SAMBA (2.0.xx only)"

world:	install_netbeui \
	config_smb \
	install_smb \
	install_utils
	@$(MAKE) config -C $(KERNEL_DIR)
	@$(MAKE) dep -C $(KERNEL_DIR)
	@$(MAKE) zlilo -C $(KERNEL_DIR)
	@$(MAKE) modules -C $(KERNEL_DIR)
	@$(MAKE) modules_install -C $(KERNEL_DIR)
	@$(MAKE) proto -C $(SAMBA_DIR)/source
	@$(MAKE) all -C $(SAMBA_DIR)/source

install: install_netbeui \
	 install_smb \
	 install_utils

clean:	clean_netbeui \
	clean_smb \
	clean_utils

install_netbeui:
	@echo Adding NetBEUI to the KERNEL
	@$(INST_SCRIPT) $(KERNEL_DIR) "$(KERNEL_VER)" $(PKG_DIR)

install_smb:
	@echo Adding NetBEUI to SAMBA
	@$(SMB_PATCH) PATCH $(SAMBA_DIR) "$(SAMBA_VER)" $(PKG_DIR)

install_utils:
	@echo Making and installing NetBEUI utilities
	@$(MAKE) -C $(UTIL_DIR)
	@cp $(UTIL_DIR)/nbstatus /usr/sbin
	@cp $(UTIL_DIR)/nbadmin /usr/sbin

clean_netbeui:
	@echo Cleaning NetBEUI from KERNEL
	@$(UNINST_SCRIPT) $(KERNEL_DIR) 

clean_smb:
	@echo Cleaning NetBEUI from SAMBA
	@$(SMB_PATCH) RESTORE $(SAMBA_DIR) "$(SAMBA_VER)" $(PKG_DIR)

clean_utils:
	@echo Cleaning NetBEUI utilities
	@$(MAKE) clean -C $(UTIL_DIR)
	@rm /usr/sbin/nbstatus
	@rm /usr/sbin/nbadmin	

clean_all: clean 
	$(MAKE) clean -C $(KERNEL_DIR)
	$(MAKE) clean -C $(SAMBA_DIR)/source
	
ifeq ($(SAMBA_VER),"2.0.xx")
config_smb:
	@echo Entering directory $(SAMBA_DIR)/source
	@cd $(SAMBA_DIR)/source; \
	rm config.cache 2>/dev/null; \
	./configure 
	@cd $(PKG_DIR)
else
config_smb:
	@echo SAMBA doesn't need any configuration
endif
