]> git.ipfire.org Git - ipfire-2.x.git/blobdiff - lfs/guardian
slang: revert parallelized build
[ipfire-2.x.git] / lfs / guardian
index 65f14cbd4d941969d8d31a718e93a9856ce4cb82..2eaf77212b2ce53dcd908f6dd45d717757801db8 100644 (file)
@@ -1,7 +1,7 @@
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007  Michael Tremer & Christian Schmidt                      #
+# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # 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        #
 
 include Config
 
-VER        = ipfire
+VER        = 2.0.2
 
 THISAPP    = guardian-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
+
 PROG       = guardian
-PAK_VER    = 5
+PAK_VER    = 15
 
-DEPS       = ""
+DEPS       = "perl-inotify2 perl-Net-IP"
 
 ###############################################################################
 # Top-level Rules
 ###############################################################################
 
-objects =
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = f83a7ca312cd3cb3ddf79fb33826027d
 
 install : $(TARGET)
 
-check : 
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
 
-download :
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
 
-md5 : 
+md5 : $(subst %,%_MD5,$(objects))
 
-dist: 
+dist:
        @$(PAK)
 
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
 ###############################################################################
 # Installation Details
 ###############################################################################
 
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
-       -mkdir -p /var/ipfire/guardian /var/log/guardian
-       touch /var/log/guardian/guardian.log
-       touch /var/ipfire/guardian/guardian.ignore
-       install -v -m 644 $(DIR_SRC)/config/guardian/guardian.conf /var/ipfire/guardian/
-       install -v -m 755 $(DIR_SRC)/config/guardian/guardian.pl /usr/local/bin/
-       install -v -m 755 $(DIR_SRC)/config/guardian/guardian_block.sh /usr/local/bin/
-       install -v -m 755 $(DIR_SRC)/config/guardian/guardian_unblock.sh /usr/local/bin/
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axvf $(DIR_DL)/$(DL_FILE)
+
+       # Adjust path for firewall binaries.
+       cd $(DIR_APP) && sed -i "s|/usr/sbin/|/sbin/|g" modules/IPtables.pm
+
+       cd $(DIR_APP) && make
+       cd $(DIR_APP) && make install
+
+       # Create config directory and create files.
+       -mkdir -pv /var/ipfire/guardian
        chown nobody.nobody /var/ipfire/guardian
-       chown nobody.nobody /var/ipfire/guardian/{guardian.conf,guardian.ignore}
+
+       # Create directory and file for logging.
+       -mkdir -pv /var/log/guardian
+       touch /var/log/guardian/guardian.log
+
+       #install initscripts
+       $(call INSTALL_INITSCRIPT,guardian)
+
+       # Create symlinks for runlevel interaction.
+       ln -svf /etc/rc.d/init.d/guardian /etc/rc.d/rc3.d/S45guardian
+       ln -svf /etc/rc.d/init.d/guardian /etc/rc.d/rc0.d/K76guardian
+       ln -svf /etc/rc.d/init.d/guardian /etc/rc.d/rc6.d/K76guardian
+
+       # Install include file for backup.
+       install -v -m 644 $(DIR_SRC)/config/backup/includes/guardian \
+               /var/ipfire/backup/addons/includes/guardian
+
+       # Logrotate.
+       -mkdir -pv /etc/logrotate.d
+       install -v -m 644 $(DIR_SRC)/config/guardian/guardian.logrotate \
+               /etc/logrotate.d/guardian
+
+       # Install addon-specific language-files.
+       install -v -m 004 $(DIR_SRC)/config/guardian/guardian.*.pl \
+               /var/ipfire/addon-lang/
+
+       @rm -rf $(DIR_APP)
        @$(POSTBUILD)