mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-09 18:45:54 +02:00
Full changelog as given in the NEWS file: kmod 29 ======= - Improvements - Add support to use /usr/local as a place for configuration files. This makes it easier to install locally without overriding distro files. - Bug fixes - Fix `modinfo -F` when module is builtin: when we asked by a specific field from modinfo, it was not working correctly if the module was builtin - Documentation fixes on precedence order of /etc and /run: the correct order is /etc/modprobe.d, /run/modprobe.d, /lib/modprobe.d - Fix the priority order that we use for searching configuration files. The correct one is /etc, /run, /usr/local/lib, /lib, for both modprobe.d and depmo.d - Fix kernel command line parsing when there are quotes present. Grub mangles the command line and changes it from 'module.option="val with spaces"' to '"module.option=val with spaces"'. Although this is weird behavior and grub could have been fixed, the kernel understands it correctly for builtin modules. So change libkmod to also parse it correctly. This also brings another hidden behavior from the kernel: newline in the kernel command line is also allowed and can be used to separate options. - Fix a memory leak, overflow and double free on error path - Fix documentation for return value from kmod_module_get_info(): we return the number of entries we added to the list - Fix output of modules.builtin.alias.bin index: we were writing an empty file due to the misuse of kmod_module_get_info() - Infra/internal - Retire integration with semaphoreci - Declare the github mirror also as an official upstream source: now besides accepting patches via mailing list, PRs on github are also acceptable - Misc improvements to testsuite, so we can use it reliably regardless of the configuration used: now tests will skip if we don't have the build dependencies) Signed-off-by: Peter Müller <peter.mueller@ipfire.org> Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
96 lines
3.4 KiB
Plaintext
96 lines
3.4 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# IPFire.org - A linux based firewall #
|
|
# Copyright (C) 2007-2022 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 = 29
|
|
|
|
THISAPP = kmod-$(VER)
|
|
DL_FILE = $(THISAPP).tar.xz
|
|
DL_FROM = $(URL_IPFIRE)
|
|
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
|
TARGET = $(DIR_INFO)/$(THISAPP)
|
|
|
|
###############################################################################
|
|
# Top-level Rules
|
|
###############################################################################
|
|
|
|
objects = $(DL_FILE)
|
|
|
|
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
|
|
|
$(DL_FILE)_MD5 = e81e63acd80697d001c8d85c1acb38a0
|
|
|
|
install : $(TARGET)
|
|
|
|
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
|
|
|
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
|
|
|
md5 : $(subst %,%_MD5,$(objects))
|
|
|
|
###############################################################################
|
|
# 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 axf $(DIR_DL)/$(DL_FILE)
|
|
cd $(DIR_APP) && ./configure \
|
|
--prefix=/usr \
|
|
--bindir=/bin \
|
|
--sysconfdir=/etc \
|
|
--disable-manpages \
|
|
--with-openssl \
|
|
--with-xz \
|
|
--with-zlib \
|
|
--with-zstd
|
|
|
|
cd $(DIR_APP) && make $(MAKETUNING)
|
|
cd $(DIR_APP) && make install
|
|
|
|
# Create symlinks
|
|
ln -svf ../bin/kmod /sbin/modprobe
|
|
ln -svf ../bin/kmod /sbin/modinfo
|
|
ln -svf ../bin/kmod /sbin/insmod
|
|
ln -svf ../bin/kmod /sbin/rmmod
|
|
ln -svf ../bin/kmod /sbin/depmod
|
|
ln -svf ../bin/kmod /sbin/lsmod
|
|
|
|
@rm -rf $(DIR_APP)
|
|
@$(POSTBUILD)
|