--- security/coreconf/config.mk	2009-05-02 17:42:18.000000000 +0100
+++ security/coreconf/config.mk	2012-05-22 00:08:39.000000000 +0100
@@ -63,7 +63,7 @@
 #######################################################################
 
 TARGET_OSES = FreeBSD BSD_OS NetBSD OpenUNIX OS2 QNX Darwin BeOS OpenBSD \
-              OpenVMS AIX
+              OpenVMS AIX Linux
 
 ifeq (,$(filter-out $(TARGET_OSES),$(OS_TARGET)))
 include $(CORE_DEPTH)/coreconf/$(OS_TARGET).mk
--- security/coreconf/Linux.mk	2009-05-02 17:42:18.000000000 +0100
+++ security/coreconf/Linux.mk	2012-05-22 00:36:03.533374797 +0100
@@ -176,3 +176,17 @@
 # Always set CPU_TAG on Linux, OpenVMS, WINCE.
 #
 CPU_TAG = _$(CPU_ARCH)
+
+#
+#Try to compile with any kernel version 2.6 and above.
+#
+DSO_LDOPTS      += -Wl,-z,defs
+
+OS_REL_CFLAGS   += -DLINUX2_1
+MKSHLIB         = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
+
+ifdef MAPFILE
+	MKSHLIB += -Wl,--version-script,$(MAPFILE)
+endif
+PROCESS_MAP_FILE = grep -v ';-' $< | \
+        sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@