Commit Graph
74 Commits
Author SHA1 Message Date
Bart Van Assche 1379918d8a iscsi-scst/Makefile: Avoid duplicate exported symbol warnings for kernel v5.5
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8687 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-17 04:24:55 +00:00
Bart Van Assche a169500590 Makefiles: Use KBUILD_EXTRA_SYMBOLS instead of copying Module.symvers
Copying Module.symvers is the oldest supported method for building external
kernel modules that depend on another external kernel module. Since support
for that method will be removed from Linux kernel v5.5, use
KBUILD_EXTRA_SYMBOLS instead to specify the external symbols SCST kernel
modules depend on. Support for KBUILD_EXTRA_SYMBOLS was introduced in
upstream kernel v2.6.26 so this patch drops support for kernels before
v2.6.26.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8686 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-16 23:29:42 +00:00
Bart Van Assche 810231050f iscsi-scst/Makefile: Improve MOFED support for Debian systems
Instead of only checking the mlnx-ofed-kernel-dkms package name, also check
the mlnx-ofed-kernel-modules package name.

Signed-off-by: Ville Skytta <ville.skytta@iki.fi>
[ bvanassche: extracted this change from a larger patch ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8667 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-11-23 19:54:54 +00:00
Bart Van Assche 8bdb6a625a iscsi-scst/Makefile: Fix grabbing OFED_VERS from deb version
Fixes: e7ccfcf213 ("iscsi-scst/Makefile, Ubuntu: Simplify code for version querying")
Signed-off-by: Ville Skytta <ville.skytta@iki.fi>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8666 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-11-23 06:39:42 +00:00
Bart Van Assche 9add460430 Suppress module signing error messages
Suppress the following error messages:

- SSL error:02001002:system library:fopen:No such file or directory: crypto/bio/bss_file.c:72
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: crypto/bio/bss_file.c:79
sign-file: certs/signing_key.pem: No such file or directory

 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8596 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-29 22:33:03 +00:00
Bart Van Assche eb03ee602b iscsi-scst/Makefile: Fix a syntax error that was introduced in r8593
Reported-by: Rob Turk <robtu@rtist.nl>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8594 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-29 22:09:05 +00:00
Bart Van Assche 84725029ce scst: Add support for signing SCST kernel modules
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8593 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-29 04:42:40 +00:00
Bart Van Assche f6371c5d5e Makefiles: Run depmod also on Ubuntu systems after module installation
Fixes: e902f79ecf ("kernel module installation: Skip "depmod" when building an RPM"; r5612)



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8582 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-15 00:29:55 +00:00
Bart Van Assche ceafec13e9 iscsi-scst/Makefile: Avoid that 'make' reports an error if InfiniBand support is disabled in the kernel
Reported-by: Goran Bruns <goeran.bruns@gmx.de>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8419 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-06-08 01:56:34 +00:00
Bart Van Assche 506aac2508 iscsi-scst: Detect at compile time whether or not max_recv_sge is available
Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8399 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-31 01:21:49 +00:00
Bart Van Assche 8e862c6d9b iscsi-scst, srpt: Restore MOFED_MAJOR and MOFED_MINOR definitions
This patch reverts commit bcdb25e550 (r7363).


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8397 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-30 13:41:27 +00:00
Bart Van Assche aa91d1cd95 iscsi-scst: Work around a compatibility problem between MOFED and DTRACE
When building against Oracle Linux + MOFED the build fails unless if
DTrace is disabled. Hence disable DTrace for the isert-scst module if
MOFED is detected.

Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>
[ bvanassche: Left out one empty OFED_CONFIG assignment ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8396 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-30 03:14:44 +00:00
Bart Van Assche 22f1132073 Makefiles: Rework build mode switching
Move the build_mode file from the top level into the scst directory. Write
build mode defines into scst/include/build_mode.h and include that file
directly or indirectly in all source files that depend on these #defines.
This approach has the advantage that "make clean" does no longer has to
be run when switching between build modes because the kernel build system
recognizes build_mode.h as a dependency and triggers a rebuild of all
source files that directly or indirectly include the build_mode.h header
file.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8347 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-05 18:19:38 +00:00
Bart Van Assche de28843d9f Makefiles: Simplify Module.symvers handling
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8122 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-31 21:13:13 +00:00
Bart Van Assche 6cb1d158e7 Makefiles: Fix $(SCST_DIR)
Fixes: dc7e039124 ("Makefiles: Remove most instances of $(SCST_INC_DIR)") (r8079)


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8121 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-31 21:11:17 +00:00
Bart Van Assche dc7e039124 Makefiles: Remove most instances of $(SCST_INC_DIR)
Move the $(SCST_INC_DIR) definitions from the out-of-tree sections into
the in-kernel sections. Since SCST is now distributed as a single tar
archive, only support in-tree builds with $(SCST_INC_DIR) and $(SCST_DIR).


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8079 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 22:10:21 +00:00
Bart Van Assche 623d4e6d0a Makefiles: Use build_mode instead of modifying the Makefile when switching the build mode
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8074 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 19:53:39 +00:00
Bart Van Assche d3e2f5ab99 Makefiles: Stop using $(SUBDIRS)
This patch avoids that the following warning is reported when building
against kernel v4.21:

================= WARNING ================
'SUBDIRS' will be removed after Linux 5.3
Please use 'M=' or 'KBUILD_EXTMOD' instead
==========================================


A quote from an upstream kernel patch:

commit 07e5823127155b3a29003aca926f87c9843f6810
Author: Andrew Morton <akpm@osdl.org>
Date:   Mon Apr 12 01:05:40 2004 -0700

    [PATCH] kbuild: external module support
    
    From: Sam Ravnborg <sam@ravnborg.org>
    
    Based on initial patch from Andreas Gruenbacher there is now better support
    for building external modules with kbuild.
    
    The preferred syntax is now:
    make -C $KERNELSRC M=$PWD
    
    but the old syntax:
    make -C $KERNELSRC SUBDIRS=$PWD modules
    will remain supported.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7851 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-31 19:03:14 +00:00
Bart Van Assche 1587638134 Remove support for "make enable_proc" and "make disable_proc"
Since RHEL 5 and kernel versions before 2.6.26 rely on procfs support,
this patch removes support for RHEL 5.x and also for kernel versions
before 2.6.26.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7829 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-22 22:13:40 +00:00
Bart Van Assche 7d13a9430e isert-scst: Port to Linux kernel v4.19
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7472 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-27 03:20:51 +00:00
Bart Van Assche b1b5e8e497 isert-scst: Avoid that building against MOFED fails with "Unknown symbol backport_dependency_symbol"
Reported-by: Carsten Aulbert <carsten.aulbert@aei.mpg.de>
Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7444 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-24 03:17:05 +00:00
Bart Van Assche bcdb25e550 iscsi-scst, srpt: Remove MOFED_MAJOR and MOFED_MINOR definitions
Commit r7084 removed all users of MOFED_MAJOR. Hence also remove the
code that sets that variable. Note: MOFED_MINOR was never used in any
.c file.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7363 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-02-05 17:24:46 +00:00
Bart Van Assche 7c550d4724 iscsi-scst: UEK 4.1.12-103.9.7.el7uek.x86_64 build fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7272 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-12-19 16:35:40 +00:00
Bart Van Assche e7ccfcf213 iscsi-scst/Makefile, Ubuntu: Simplify code for version querying
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7235 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-25 23:35:49 +00:00
Bart Van Assche 63f352fc06 iscsi-scst/Makefile: Change MOFED path into /usr/src/ofa_kernel/default
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7234 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-25 01:52:53 +00:00
Bart Van Assche f3d11b715b iscsi-scst/Makefile: Add include/uapi directory to the include path
Reported-by: Sergey Gorenko <sergeygo@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7215 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 19:39:27 +00:00
Bart Van Assche 64d40aeeb2 iscsi-scst/Makefile: Simplify MLNX_OFED support code
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7214 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 18:26:29 +00:00
Bart Van Assche 4edaf3e4bf iscsi-scst/Makefile: Simplify MLNX_OFED detection for Red Hat
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7213 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 18:25:47 +00:00
Bart Van Assche 4ffb6b6f12 iscsi-scst/Makefile: Add support for make -i
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7132 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-04-15 04:10:31 +00:00
Bart Van Assche 8c4889d092 iscsi-scst/Makefile: Fix detection of whether InfiniBand is enabled
Inspecting modules.symbols is fine after a kernel has been installed but
not if a kernel tree has not been installed. If a kernel tree has not
been installed, check the .config file.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7131 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-04-14 21:38:56 +00:00
Bart Van Assche 3685688caa iscsi-scst/Makefile: Optimize Makefile
Cache conftest results and enable parallel invocation of conftests.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7128 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-04-14 04:29:38 +00:00
Vladislav Bolkhovitin 68129122e8 iscsi-scst: clean up the conftest subdirectory too
Reported-by: David Butterfield <dab21774@gmail.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7124 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-04-14 01:16:10 +00:00
Bart Van Assche 9cbe881f2f isert-scst: Fix CentOS 7.3 build
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7084 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-12-27 20:26:11 +00:00
Bart Van Assche db36d29932 isert-scst: Rename SCST_DIR into SCST_SYMVERS_DIR
Additionally, align shell code.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7083 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-12-27 20:25:13 +00:00
Vladislav Bolkhovitin 1dd41fa380 generate-kernel-patch: fix custom cross-compilation kernel case
Otherwise there is non-fatal error like: No such file or directory

grep: /lib/modules/<current_running_kernel>/build/.config: Permission denied

This is a better version of r7022 suggested by Bart



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7037 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-11-30 03:06:38 +00:00
Bart Van Assche 2c9728e4cf iscsi-scst/Makefile: Fix INFINIBAND_ENABLED test
Running "make install" ensures that the kernel config file is available
in $(KDIR)/.config. However, that file is not available if $(KDIR) points
at a kernel that comes from a Linux distributor. Hence change the
$(INFINIBAND_ENABLED) test to check $(KDIR)/../modules.symbols.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7034 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-11-24 17:32:40 +00:00
Bart Van Assche d2dd61c072 isert-scst, srpt: Fix build on systems with kernel >= 4.2.0 + MOFED 3.3
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6973 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-08-22 04:28:52 +00:00
Vladislav Bolkhovitin 7219595e5c iscsi-scst: fix 2 minor main Makefile issues
1. Fix build of progs and mods targets, if iscsi_scst_itf_ver.h does not exist
2. Fix small race for parallel build of "all" target, when iscsi_scst_itf_ver.h
   not yet built, when progs or mods target need it



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6861 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-04-20 03:17:16 +00:00
Bart Van Assche 7eb874c3ba isert-scst: RHEL 7.2 build fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6739 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-12-11 23:44:27 +00:00
Bart Van Assche bdf2c68e8a iscsi-scst/Makefile: Only report the OFED flavor when building the iSER target driver
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6320 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 13:27:49 +00:00
Bart Van Assche 9e700c6c03 iscsi-scst/Makefile: Only build the iSER target driver if InfiniBand has been enabled in the kernel config
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6313 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-15 14:41:35 +00:00
Bart Van Assche 6aaeca1cd9 Merge iser branch r6234 into trunk
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6235 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-10 15:35:26 +00:00
Vladislav Bolkhovitin 57ae9291b9 iscsi-scst: Concatenate two string literals
This patch fixes the following kernel 3.19 checkpatch complaint:

Consecutive strings are generally better as a single string.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6160 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-27 03:52:37 +00:00
Bart Van Assche e902f79ecf kernel module installation: Skip "depmod" when building an RPM
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5612 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-06-19 12:48:25 +00:00
Bart Van Assche 69d5b979eb Makefiles: 'uninstall' target fixes
Some components don't have 'uninstall' targets although the top-level
Makefile references them. Some others don't remove the proper file.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5290 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-02-18 08:41:30 +00:00
Bart Van Assche 7d89372c53 Makefiles: respect DESTDIR when specified
Not all SCST components handle DESTDIR properly, or at all.

In particular:
* INSTALL_MOD_PATH should account for DESTDIR when 'make modules_install'
  is invoked, so the kernel make infrastructure deploys the modules
  and runs depmod against the proper directory tree.
* depmods must include a '-b' option to reference the proper directory tree.
* Drop special ISCSI_DESTDIR.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5289 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-02-18 08:40:36 +00:00
Bart Van Assche 79b8ce942e Makefiles: calculate KVER properly
When deriving the kernel version (KVER) from KDIR, the file
$(KDIR)/include/config/kernel.release should be preferred over
'make kernelversion'.

For example, the Ubuntu 3.2.0-23-generic kernel has a kernel.release
file containing '3.2.0-23-generic', but 'make kernelversion' returns
3.2.14. Since the modules are stored under /lib/modules/3.2.0-23-generic,
the value in kernel.release is the correct one to use.
    
Also:
- Evaluate KVER only once
- All depmod commands must include KVER
    
Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
[bvanassche: Split long lines / removed trailing whitespace]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5286 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-02-14 15:52:10 +00:00
Bart Van Assche c33cf3f81b Makefiles: Convert from "install" to "make modules_install"
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5284 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-02-14 13:48:54 +00:00
Bart Van Assche 34d764426a scst: Make it possible to build an RPM
Make it possible to build an SCST RPM via the command "make rpm".
The contents of the two RPMs built by this command is as follows:

$ rpm -qlp rpmbuilddir/RPMS/x86_64/scst-3.11.8+-3.0.0.*-1.x86_64.rpm
/lib/modules/3.11.8+/extra
/lib/modules/3.11.8+/extra/dev_handlers
/lib/modules/3.11.8+/extra/dev_handlers/scst_cdrom.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_changer.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_disk.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_modisk.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_processor.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_raid.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_tape.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_user.ko
/lib/modules/3.11.8+/extra/dev_handlers/scst_vdisk.ko
/lib/modules/3.11.8+/extra/fcst.ko
/lib/modules/3.11.8+/extra/ib_srpt.ko
/lib/modules/3.11.8+/extra/iscsi-scst.ko
/lib/modules/3.11.8+/extra/qla2x00tgt.ko
/lib/modules/3.11.8+/extra/qla2xxx_scst.ko
/lib/modules/3.11.8+/extra/scst.ko
/lib/modules/3.11.8+/extra/scst_local.ko
/usr/sbin/iscsi-scst-adm
/usr/sbin/iscsi-scstd
/usr/share/man/man5/iscsi-scstd.conf.5.gz
/usr/share/man/man8/iscsi-scst-adm.8.gz
/usr/share/man/man8/iscsi-scstd.8.gz
/var/lib/scst
$ rpm -qlp rpmbuilddir/RPMS/x86_64/scst-3.11.8+-devel-3.0.0.*-1.x86_64.rpm
/usr/include/scst
/usr/include/scst/Module.symvers
/usr/include/scst/scst.h
/usr/include/scst/scst_const.h
/usr/include/scst/scst_debug.h
/usr/include/scst/scst_sgv.h
/usr/include/scst/scst_user.h


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5137 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-12-03 12:04:35 +00:00
Vladislav Bolkhovitin 369863f015 Allow install SCST in any location
Currently the install location of SCST is pretty much hard coded into 
the Makefiles to be /usr/local.

I am custom building a system for ZFS & SCST and I want to install in 
/usr instead of /usr/local.

Currently I am doing a “find . -name Makefile -exec sed -i 's:/usr/local:/usr:g'
{} \;” to accommodate this.

This patch fixes it.

From Sietse van Zanen <sietse@wizdom.nu>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4791 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-03-08 21:25:45 +00:00