diff --git a/debian/bin/kconfig.py b/debian/bin/kconfig.py new file mode 100755 index 000000000..3357beb30 --- /dev/null +++ b/debian/bin/kconfig.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python2.4 + +import sys +from debian_linux.abi import * +from debian_linux.config import * +from debian_linux.kconfig import * + +class checker(object): + def __init__(self, arch, subarch, flavour): + self.config = config_reader_arch(["debian/arch"]) + + self.config = ["debian/arch/config"] + self.config_arch = ["debian/arch/%s/config" % arch] + if subarch == 'none': + self.config_subarch = [] + self.config_flavour = ["debian/arch/%s/config.%s" % (arch, flavour)] + else: + self.config_subarch = ["debian/arch/%s/%s/config" % (arch, subarch)] + self.config_flavour = ["debian/arch/%s/%s/config.%s" % (arch, subarch, flavour)] + + def __call__(self, out): + config = [] + config.extend(self.config) + config.extend(self.config_arch) + config.extend(self.config_subarch) + config.extend(self.config_flavour) + + kconfig = kconfigfile() + for c in config: + kconfig.read(file(c)) + + out.write(str(kconfig)) + +if __name__ == '__main__': + sys.exit(checker(*sys.argv[1:])(sys.stdout)) diff --git a/debian/rules.real b/debian/rules.real index 71da95fd2..7d6f571c5 100644 --- a/debian/rules.real +++ b/debian/rules.real @@ -88,8 +88,7 @@ ifneq ($(SUBARCH),none) config_common += debian/arch/$(ARCH)/$(SUBARCH)/config endif $(BUILD_DIR)/config.$(ARCH)-$(SUBARCH)-$(FLAVOUR): $(basedir)/config.$(FLAVOUR) $(config_common) - @echo "Generating configuration file $@:" - ocaml debian/bin/kconfig.ml -b "debian/arch" -a "$(ARCH)" -s "$(SUBARCH)" -f "$(FLAVOUR)" > '$@' + python2.4 debian/bin/kconfig.py "$(ARCH)" "$(SUBARCH)" "$(FLAVOUR)" > '$@' $(BUILD_DIR)/linux-source-$(UPSTREAMVERSION).tar.bz2: SOURCE_DIR=$(BUILD_DIR)/source $(BUILD_DIR)/linux-source-$(UPSTREAMVERSION).tar.bz2: DIR = $(BUILD_DIR)/linux-source-$(UPSTREAMVERSION)