diff --git a/repos/base-pistachio/patches/config_x86_32_only.patch b/repos/base-pistachio/patches/config_x86_32_only.patch new file mode 100644 index 0000000000..850448be3e --- /dev/null +++ b/repos/base-pistachio/patches/config_x86_32_only.patch @@ -0,0 +1,156 @@ +diff --git a/kernel/config/Makefile b/kernel/config/Makefile +index f8bdb12..2529ee1 100644 +--- a/kernel/config/Makefile ++++ b/kernel/config/Makefile +@@ -30,37 +30,41 @@ + # + ###################################################################### + +-CMLPATH= $(SRCDIR)/../contrib/cml2 +-CMLCOMPILE= $(CMLPATH)/cmlcompile.py +-CMLCONFIG= $(CMLPATH)/cmlconfigure.py +-CMLCONFIGTRANS= $(CMLPATH)/configtrans.py +- +-CML_INPUT= $(addprefix $(SRCDIR)/config/, rules.cml \ +- x86.cml \ +- powerpc.cml \ +- powerpc64.cml \ +- ) +- +-CMLBATCH_PARAMS ?= +-CMLCONFIG_OPTIONS = -o config.out -i config.out \ +- $(addprefix -D,$(CMLBATCH_PARAMS)) rules.out +- +-rules.out: $(CML_INPUT) +- @$(CMLCOMPILE) -o $@ $< +- +-menuconfig: CMLMODE=-c +-batchconfig: CMLMODE=-b +-ttyconfig: CMLMODE=-t +-xconfig: CMLMODE=-x +- +-# Always invoke the configuration tool, but only rebuild targets down the +-# dependency chain when the config.out changed. + .PHONY: always +-config.out: rules.out always +- @$(CMLCONFIG) $(CMLMODE) $(CMLCONFIG_OPTIONS) + +-config.h .config: config.out +- @$(CMLCONFIGTRANS) -h $(@D)/config.h -s $(@D)/.config $< ++.config: always ++ echo "# Automatically generated, don't edit" > $@ ++ echo "CONFIG_ARCH_X86=y" >> $@ ++ echo "CONFIG_SUBARCH_X32=y" >> $@ ++ echo "CONFIG_CPU_X86_P4=y" >> $@ ++ echo "CONFIG_PLAT_PC99=y" >> $@ ++ echo "CONFIG_MAX_IOAPICS=8" >> $@ ++ echo "CONFIG_APIC_TIMER_TICK=1000" >> $@ ++ echo "CONFIG_SMP_MAX_PROCS=8" >> $@ ++ echo "CONFIG_EXPERIMENTAL=y" >> $@ ++ echo "CONFIG_X_PAGER_EXREGS=y" >> $@ ++ echo "CONFIG_SCHED_RR=y" >> $@ ++ echo "CONFIG_DEBUG=y" >> $@ ++ echo "CONFIG_NEW_MDB=y" >> $@ ++ echo "CONFIG_KDB_CONS_COM=y" >> $@ ++ echo "CONFIG_KDB_COMPORT=0x0" >> $@ ++ echo "CONFIG_KDB_COMSPEED=115200" >> $@ ++ echo "CONFIG_KDB_BOOT_CONS=0" >> $@ ++ echo "CONFIG_KDB_BREAKIN=y" >> $@ ++ echo "CONFIG_KDB_BREAKIN_BREAK=y" >> $@ ++ echo "CONFIG_KDB_BREAKIN_ESCAPE=y" >> $@ ++ echo "CONFIG_VERBOSE_INIT=y" >> $@ ++ echo "CONFIG_TRACEPOINTS=y" >> $@ ++ echo "CONFIG_TRACEBUFFER=y" >> $@ ++ echo "CONFIG_X86_PSE=y" >> $@ ++ echo "CONFIG_X86_SYSENTER=y" >> $@ ++ echo "CONFIG_X86_PGE=y" >> $@ ++ echo "CONFIG_X86_FXSR=y" >> $@ ++ echo "CONFIG_IS_32BIT=y" >> $@ ++ echo "CONFIG_X86_HTT=y" >> $@ ++ echo "CONFIG_X86_PAT=y" >> $@ ++ echo "CONFIG_X86_HVM=y" >> $@ ++ echo "CONFIG_X86_TSC=y" >> $@ + + $(BUILDDIR)/Makeconf.local: .config + @echo "Rewriting $(@F) ..." +diff --git a/kernel/config/template/config/config.h b/kernel/config/template/config/config.h +index 5b1d315..eab350e 100644 +--- a/kernel/config/template/config/config.h ++++ b/kernel/config/template/config/config.h +@@ -30,3 +30,76 @@ + * + ********************************************************************/ + /* machine-generated file - do not edit */ ++#define CONFIG_ARCH_X86 1 ++#undef CONFIG_ARCH_POWERPC ++#undef CONFIG_ARCH_POWERPC64 ++#define CONFIG_SUBARCH_X32 1 ++#undef CONFIG_SUBARCH_X64 ++#undef CONFIG_CPU_X86_I486 ++#undef CONFIG_CPU_X86_I586 ++#undef CONFIG_CPU_X86_I686 ++#define CONFIG_CPU_X86_P4 1 ++#undef CONFIG_CPU_X86_K8 ++#undef CONFIG_CPU_X86_C3 ++#undef CONFIG_CPU_X86_SIMICS ++#define CONFIG_PLAT_PC99 1 ++#undef CONFIG_IOAPIC ++#define CONFIG_MAX_IOAPICS 8 ++#define CONFIG_APIC_TIMER_TICK 1000 ++#undef CONFIG_SMP ++#define CONFIG_SMP_MAX_PROCS 8 ++#undef CONFIG_SMP_IDLE_POLL ++#define CONFIG_EXPERIMENTAL 1 ++#define CONFIG_X_PAGER_EXREGS 1 ++#undef CONFIG_X_CTRLXFER_MSG ++#undef CONFIG_X_EVT_LOGGING ++#define CONFIG_SCHED_RR 1 ++#undef CONFIG_X_SCHED_HS ++#undef CONFIG_IPC_FASTPATH ++#define CONFIG_DEBUG 1 ++#undef CONFIG_DEBUG_SYMBOLS ++#undef CONFIG_K8_FLUSHFILTER ++#undef CONFIG_PERFMON ++#undef CONFIG_SPIN_WHEELS ++#define CONFIG_NEW_MDB 1 ++#undef CONFIG_STATIC_TCBS ++#undef CONFIG_X86_SMALL_SPACES ++#undef CONFIG_X86_IO_FLEXPAGES ++#define CONFIG_KDB_CONS_COM 1 ++#define CONFIG_KDB_COMPORT 0x0 ++#define CONFIG_KDB_COMSPEED 115200 ++#undef CONFIG_KDB_CONS_KBD ++#define CONFIG_KDB_BOOT_CONS 0 ++#undef CONFIG_KDB_DISAS ++#undef CONFIG_KDB_ON_STARTUP ++#define CONFIG_KDB_BREAKIN 1 ++#define CONFIG_KDB_BREAKIN_BREAK 1 ++#define CONFIG_KDB_BREAKIN_ESCAPE 1 ++#undef CONFIG_KDB_INPUT_HLT ++#undef CONFIG_KDB_NO_ASSERTS ++#define CONFIG_VERBOSE_INIT 1 ++#define CONFIG_TRACEPOINTS 1 ++#undef CONFIG_KMEM_TRACE ++#define CONFIG_TRACEBUFFER 1 ++#undef CONFIG_HAVE_MEMORY_CONTROL ++#define CONFIG_X86_PSE 1 ++#undef CONFIG_BIGENDIAN ++#undef CONFIG_PPC_MMU_TLB ++#define CONFIG_X86_SYSENTER 1 ++#define CONFIG_X86_PGE 1 ++#define CONFIG_X86_FXSR 1 ++#define CONFIG_IS_32BIT 1 ++#define CONFIG_X86_HTT 1 ++#define CONFIG_X86_PAT 1 ++#undef CONFIG_PPC_BOOKE ++#undef CONFIG_IS_64BIT ++#undef CONFIG_MULTI_ARCHITECTURE ++#undef CONFIG_X86_EM64T ++#undef CONFIG_PPC_CACHE_L1_WRITETHROUGH ++#undef CONFIG_PPC_TLB_INV_LOCAL ++#undef CONFIG_PPC_CACHE_ICBI_LOCAL ++#undef CONFIG_X86_SMALL_SPACES_GLOBAL ++#define CONFIG_X86_HVM 1 ++#undef CONFIG_PPC_MMU_SEGMENTS ++#define CONFIG_X86_TSC 1 ++#define AUTOCONF_INCLUDED diff --git a/repos/base-pistachio/ports/pistachio.hash b/repos/base-pistachio/ports/pistachio.hash index 2e07c71e7e..a4cf4b6bc6 100644 --- a/repos/base-pistachio/ports/pistachio.hash +++ b/repos/base-pistachio/ports/pistachio.hash @@ -1 +1 @@ -10ce61c40c6a740070eee64320bce5df390180fa +969bb0e9a03f32081b94da1c24b440e67f44116a diff --git a/repos/base-pistachio/ports/pistachio.port b/repos/base-pistachio/ports/pistachio.port index 81ca719daf..3821451e6f 100644 --- a/repos/base-pistachio/ports/pistachio.port +++ b/repos/base-pistachio/ports/pistachio.port @@ -14,22 +14,10 @@ $(call check_tool,autoheader) $(call check_tool,autoconf) $(call check_tool,ed) -# -# Determine python version to use for CML2 -# -PYTHON2 := $(notdir $(lastword $(shell which python2 $(addprefix python2.,4 5 6 7 8)))) -ifeq ($(PYTHON2),) -default: python_not_installed -python_not_installed: - $(error CML2 Configuration System needs Python 2 to be installed) -endif - default : additional_steps additional_steps : $(DOWNLOADS) @# use GCC front end for as linker for the pistachio user land $(VERBOSE)sed -i "/LD=/s/^.*$$/LD=\$$(CC)/" src/kernel/pistachio/user/config.mk.in @# add '-Wl,' prefix to '-melf_*' linker options $(VERBOSE)sed -i "s/-melf_/-Wl,-melf_/" `grep -rl melf_ src/kernel/pistachio/user` - $(VERBOSE)for i in cmlcompile.py cmlconfigure.py configtrans.py; do \ - sed -i "s/env python/env $(PYTHON2)/" src/kernel/pistachio/contrib/cml2/$$i; done $(VERBOSE)cd src/kernel/pistachio/user; autoheader; autoconf; rm -rf autom4te.cache