this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #196 from fotcorn/dkms

kernel module: added initial dkms support

authored by

Luboš Doležel and committed by
GitHub
e7130227 00654e43

+44 -8
+17 -5
README.md
··· 57 57 cmake ../.. -DCMAKE_TOOLCHAIN_FILE=../../Toolchain-x86_64.cmake 58 58 make 59 59 make install 60 - 61 - # Now we go into src/lkm to build the kernel module 62 - cd ../../src/lkm 63 - make 64 - make install 65 60 ```` 66 61 67 62 #### For running i386 OS X binaries ··· 91 86 cmake ../.. -DCMAKE_TOOLCHAIN_FILE=../../Toolchain-x86.cmake 92 87 make 93 88 make install 89 + ```` 90 + 91 + #### Building and loading the kernel module (x86-64 and i386) 92 + 93 + ```` 94 + # Go into src/lkm to build the kernel module 95 + cd ../../src/lkm 96 + make 97 + make install 98 + ```` 99 + 100 + If this does not work (e.g. on newer Ubuntu versions), try the DKMS build: 101 + 102 + ```` 103 + # Go into src/lkm to build the kernel module 104 + cd ../../src/lkm 105 + sudo ./dkms.sh 94 106 ```` 95 107 96 108 Loading the kernel module:
+9 -3
src/lkm/Makefile
··· 1 - ccflags-y := -I$(src)/../../kernel-include \ 2 - -I$(src)/../../platform-include \ 3 - -I$(src)/../libc/include \ 1 + DARLING_SRC ?= $(src) 2 + 3 + ccflags-y := -I$(DARLING_SRC)/../../kernel-include \ 4 + -I$(DARLING_SRC)/../../platform-include \ 5 + -I$(DARLING_SRC)/../libc/include \ 4 6 -DMACH_KERNEL_PRIVATE \ 5 7 -DDARLING_DEBUG \ 6 8 -D__LITTLE_ENDIAN__ \ ··· 32 34 PWD := $(shell pwd) 33 35 default: 34 36 $(MAKE) -C $(KERNELDIR) M=$(PWD) modules 37 + 35 38 endif 39 + 40 + all: 41 + $(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules 36 42 37 43 clean: 38 44 rm -f *.o *.ko
+7
src/lkm/dkms.conf
··· 1 + PACKAGE_NAME="darling-mach" 2 + PACKAGE_VERSION="1.0" 3 + CLEAN="make clean" 4 + MAKE[0]="make all KVERSION=$kernelver" 5 + BUILT_MODULE_NAME[0]="darling-mach" 6 + DEST_MODULE_LOCATION[0]="/updates" 7 + AUTOINSTALL="yes"
+6
src/lkm/dkms.sh
··· 1 + #!/usr/bin/env bash 2 + export DARLING_SRC=`pwd` 3 + dkms add . 4 + dkms build -m darling-mach -v 1.0 5 + dkms install -m darling-mach -v 1.0 6 +
+5
src/lkm/remove_dkms.sh
··· 1 + #!/usr/bin/env bash 2 + dkms remove -m darling-mach -v 1.0 --all 3 + rm -rf /var/lib/dkms/darling-mach 4 + rm -rf /usr/src/darling-mach-1.0 5 +