mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-09 18:45:54 +02:00
For details see: https://blog.clamav.net/2021/09/clamav-01040-released.html New requirements and major changes: "As of ClamAV 0.104, CMake is required to build ClamAV ... The built-in LLVM for the bytecode runtime has been removed." But since the current 'llvm 12.0.1' version refused to be build "...you will need to supply the development libraries for LLVM version 3.6.2" - which is ~6 years old - I gave up with 'llvm' and stayed with the bytecode "interpreter". Cited: "The bytecode interpreter is the default runtime for bytecode signatures just as it was in ClamAV 0.103. @ALL: In 'clamav 0.104.0' there is no appropriate cmake option for "CONFIGURE_FLAGS = --disable-fanotify" for ARM buildings anymore. Perhaps there is a kernel option for this? => https://docs.clamav.net/manual/OnAccess.html#requirements Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org> Reviewed-by: Michael Tremer <michael.tremer@ipfire.org> Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
112 lines
3.9 KiB
Plaintext
112 lines
3.9 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# IPFire.org - A linux based firewall #
|
|
# Copyright (C) 2007-2021 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 #
|
|
# 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 <http://www.gnu.org/licenses/>. #
|
|
# #
|
|
###############################################################################
|
|
|
|
###############################################################################
|
|
# Definitions
|
|
###############################################################################
|
|
|
|
include Config
|
|
|
|
VER = 0.104.0
|
|
|
|
THISAPP = clamav-$(VER)
|
|
DL_FILE = $(THISAPP).tar.gz
|
|
DL_FROM = $(URL_IPFIRE)
|
|
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
|
TARGET = $(DIR_INFO)/$(THISAPP)
|
|
PROG = clamav
|
|
PAK_VER = 57
|
|
|
|
DEPS =
|
|
|
|
DATABASE_DIR = /var/lib/clamav
|
|
|
|
###############################################################################
|
|
# Top-level Rules
|
|
###############################################################################
|
|
|
|
objects = $(DL_FILE)
|
|
|
|
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
|
|
|
$(DL_FILE)_MD5 = 3f4789c09f5a35e9ea580edd5c3e54b6
|
|
|
|
install : $(TARGET)
|
|
|
|
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
|
|
|
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
|
|
|
md5 : $(subst %,%_MD5,$(objects))
|
|
|
|
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)
|
|
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
|
|
|
cd $(DIR_APP) && mkdir -pv build
|
|
cd $(DIR_APP)/build && cmake .. -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_INSTALL_LIBDIR=/usr/lib \
|
|
-DOPTIMIZE=ON \
|
|
-DBYTECODE_RUNTIME="interpreter" \
|
|
-DENABLE_TESTS=OFF \
|
|
-DENABLE_CLAMONACC=OFF \
|
|
-DENABLE_MILTER=OFF \
|
|
-DENABLE_MAN_PAGES=OFF \
|
|
-DENABLE_EXTERNAL_MSPACK=OFF \
|
|
-DENABLE_FRESHCLAM_DNS_FIX=ON \
|
|
-DAPP_CONFIG_DIRECTORY=/var/ipfire/clamav \
|
|
-DDATABASE_DIRECTORY=$(DATABASE_DIR)
|
|
|
|
cd $(DIR_APP)/build && ninja $(MAKETUNING) && ninja install
|
|
|
|
mkdir -pv $(DATABASE_DIR)
|
|
chown clamav.clamav -R $(DATABASE_DIR)
|
|
rm -rfv $(DATABASE_DIR)/*.cvd
|
|
mkdir -pv /var/ipfire/clamav
|
|
cp -rf $(DIR_SRC)/config/clamav/* /var/ipfire/clamav/
|
|
mkdir -pv /var/run/clamav
|
|
chown clamav:clamav /var/run/clamav
|
|
#install initscripts
|
|
$(call INSTALL_INITSCRIPT,clamav)
|
|
@rm -rf $(DIR_APP)
|
|
@$(POSTBUILD)
|