Changes in / [e2b73d4f:facebd56] in mainline
- Files:
-
- 2 added
- 1 deleted
- 75 edited
Legend:
- Unmodified
- Added
- Removed
-
Makefile
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Include configuration 30 # 31 29 32 CSCOPE = cscope 30 33 CONFIG = tools/config.py 31 AUTOTOOL = tools/autotool.py32 SANDBOX = autotool33 34 34 CONFIG_RULES = HelenOS.config 35 .PHONY: all config config_default distclean clean cscope precheck 35 36 36 COMMON_MAKEFILE = Makefile.common 37 COMMON_HEADER = common.h 38 COMMON_HEADER_PREV = $(COMMON_HEADER).prev 39 40 CONFIG_MAKEFILE = Makefile.config 41 CONFIG_HEADER = config.h 42 43 .PHONY: all precheck cscope autotool config_default config distclean clean 44 45 all: $(COMMON_MAKEFILE) $(COMMON_HEADER) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) 46 cp -a $(COMMON_HEADER) $(COMMON_HEADER_PREV) 37 all: Makefile.config config.h config.defs 47 38 $(MAKE) -C kernel PRECHECK=$(PRECHECK) 48 39 $(MAKE) -C uspace PRECHECK=$(PRECHECK) … … 55 46 find kernel boot uspace -regex '^.*\.[chsS]$$' | xargs $(CSCOPE) -b -k -u -f$(CSCOPE).out 56 47 57 $(COMMON_MAKEFILE): autotool 58 $(COMMON_HEADER): autotool 48 Makefile.config: config_default 59 49 60 autotool: $(CONFIG_MAKEFILE) 61 $(AUTOTOOL) 62 -[ -f $(COMMON_HEADER_PREV) ] && diff -q $(COMMON_HEADER_PREV) $(COMMON_HEADER) && mv -f $(COMMON_HEADER_PREV) $(COMMON_HEADER) 50 config.h: config_default 63 51 64 $(CONFIG_MAKEFILE): config_default 65 $(CONFIG_HEADER): config_default 52 config.defs: config_default 66 53 67 config_default: $(CONFIG_RULES)68 $(CONFIG) $<default54 config_default: HelenOS.config 55 $(CONFIG) HelenOS.config default 69 56 70 config: $(CONFIG_RULES)71 $(CONFIG) $<57 config: HelenOS.config 58 $(CONFIG) HelenOS.config 72 59 73 60 distclean: clean 74 rm -f $(CSCOPE).out $(COMMON_MAKEFILE) $(COMMON_HEADER) $(COMMON_HEADER_PREV) $(CONFIG_MAKEFILE) $(CONFIG_HEADER)tools/*.pyc tools/checkers/*.pyc61 rm -f $(CSCOPE).out Makefile.config config.h config.defs tools/*.pyc tools/checkers/*.pyc 75 62 76 63 clean: 77 rm -fr $(SANDBOX)78 64 $(MAKE) -C kernel clean 79 65 $(MAKE) -C uspace clean -
boot/Makefile
re2b73d4f rfacebd56 30 30 # 31 31 32 -include ../Makefile.common33 32 -include ../Makefile.config 33 -include ../config.defs 34 34 35 35 ## Paths … … 42 42 .PHONY: all build clean generic_clean 43 43 44 all: ../Makefile.co mmon ../Makefile.config ../config.hbuild44 all: ../Makefile.config ../config.h ../config.defs build 45 45 46 46 -include arch/$(BARCH)/Makefile.inc -
boot/Makefile.common
re2b73d4f rfacebd56 27 27 # 28 28 29 -include ../Makefile.common30 29 -include ../Makefile.config 31 30 -
boot/arch/arm32/loader/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: ../../../../version ../../../../Makefile.co mmon ../../../../Makefile.config ../../../../config.h34 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
boot/arch/arm32/loader/Makefile.build
re2b73d4f rfacebd56 32 32 33 33 include ../../../../version 34 include ../../../../Makefile.common35 34 include ../../../../Makefile.config 35 include ../../../../config.defs 36 36 include Makefile.common 37 37 include Makefile.toolchain -
boot/arch/arm32/loader/Makefile.toolchain
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifndef CROSS_PREFIX 33 CROSS_PREFIX = /usr/local 34 endif 35 29 36 BFD_NAME = elf32-littlearm 30 37 BFD_ARCH = arm 38 TARGET = arm-linux-gnu 39 TOOLCHAIN_DIR = $(CROSS_PREFIX)/arm32/bin 31 40 32 41 JOBFILE = ../../../../tools/jobfile.py 42 43 ifeq ($(COMPILER),gcc_native) 44 CC = gcc 45 AS = as 46 LD = ld 47 OBJCOPY = objcopy 48 OBJDUMP = objdump 49 endif 50 51 ifeq ($(COMPILER),gcc_cross) 52 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 53 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 54 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 55 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 56 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 57 endif 33 58 34 59 CFLAGS = \ -
boot/arch/ia64/loader/Makefile
re2b73d4f rfacebd56 29 29 30 30 include Makefile.common 31 include ../../../../Makefile.common32 31 include ../../../../Makefile.config 33 32 34 33 .PHONY: all clean 35 34 36 all: ../../../../version ../../../../Makefile.co mmon ../../../../Makefile.config ../../../../config.h35 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 37 36 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 38 37 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
boot/arch/ia64/loader/Makefile.build
re2b73d4f rfacebd56 32 32 33 33 include ../../../../version 34 include ../../../../Makefile.common35 34 include ../../../../Makefile.config 35 include ../../../../config.defs 36 36 include Makefile.common 37 37 include Makefile.toolchain … … 60 60 $(OUTPUT): $(OBJECTS) $(COMPONENT_OBJECTS) $(LINK) 61 61 $(LD) -no-check-sections -N -T $(LINK) $(COMPONENT_OBJECTS) $(OBJECTS) -o $@ 62 $(MAKE) -C gefi/HelenOS 62 $(MAKE) -C gefi/HelenOS PREFIX=$(GEFI_PREFIX) 63 63 cp gefi/HelenOS/hello.efi ../../../../ 64 64 cp gefi/HelenOS/image.bin ../../../../ -
boot/arch/ia64/loader/Makefile.common
re2b73d4f rfacebd56 31 31 # 32 32 33 include ../../../../Makefile.common34 33 include ../../../../Makefile.config 35 34 include ../../../Makefile.common -
boot/arch/ia64/loader/Makefile.toolchain
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifndef CROSS_PREFIX 33 CROSS_PREFIX = /usr/local 34 endif 35 29 36 BFD_NAME = elf64-ia64-little 30 37 BFD_ARCH = ia64 38 TARGET = ia64-pc-linux-gnu 39 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64/bin 31 40 32 41 JOBFILE = ../../../../tools/jobfile.py 42 43 ifeq ($(COMPILER),gcc_native) 44 CC = gcc 45 AS = as 46 LD = ld 47 OBJCOPY = objcopy 48 OBJDUMP = objdump 49 GEFI_PREFIX = 50 endif 51 52 ifeq ($(COMPILER),icc) 53 CC = icc 54 AS = as 55 LD = ld 56 OBJCOPY = objcopy 57 OBJDUMP = objdump 58 GEFI_PREFIX = 59 endif 60 61 ifeq ($(COMPILER),gcc_cross) 62 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 63 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 64 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 65 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 66 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 67 GEFI_PREFIX = $(TOOLCHAIN_DIR)/$(TARGET)- 68 endif 33 69 34 70 CFLAGS = \ -
boot/arch/ia64/loader/gefi/HelenOS/Makefile
re2b73d4f rfacebd56 22 22 # 23 23 24 prefix=$(PREFIX) 24 25 include ../Make.defaults 25 26 CDIR=$(TOPDIR)/.. … … 68 69 69 70 gefi: 70 $(MAKE) -C .. 71 $(MAKE) -C .. prefix=$(PREFIX) -
boot/arch/ia64/loader/gefi/Make.defaults
re2b73d4f rfacebd56 26 26 # lib and include under the root 27 27 # 28 29 include ../../../../../Makefile.common30 31 28 INSTALLROOT=/usr/local 32 29 … … 34 31 35 32 ARCH = ia64 36 INCDIR = -I. -I$(CDIR)/inc -I$(CDIR)/inc/$(ARCH) -I$(CDIR)/inc/protocol 33 INCDIR = -I. -I$(CDIR)/inc -I$(CDIR)/inc/$(ARCH) -I$(CDIR)/inc/protocol 37 34 CPPFLAGS = -DCONFIG_$(ARCH) 38 35 CFLAGS = -O2 -fpic -Wall -fshort-wchar -fno-strict-aliasing -fno-merge-constants -frename-registers -mfixed-range=f32-f127 39 36 LDFLAGS = -nostdlib 40 37 INSTALL = install 38 39 CC = $(prefix)gcc 40 AS = $(prefix)as 41 LD = $(prefix)ld 42 AR = $(prefix)ar 43 RANLIB = $(prefix)ranlib 44 OBJCOPY = $(prefix)objcopy 45 OBJDUMP = $(prefix)objdump -
boot/arch/mips32/loader/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: ../../../../version ../../../../Makefile.co mmon ../../../../Makefile.config ../../../../config.h34 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
boot/arch/mips32/loader/Makefile.build
re2b73d4f rfacebd56 32 32 33 33 include ../../../../version 34 include ../../../../Makefile.common35 34 include ../../../../Makefile.config 35 include ../../../../config.defs 36 36 include Makefile.common 37 37 include Makefile.toolchain -
boot/arch/mips32/loader/Makefile.toolchain
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifndef CROSS_PREFIX 33 CROSS_PREFIX = /usr/local 34 endif 35 29 36 BFD_ARCH = mips 37 TARGET = mipsel-linux-gnu 38 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32/bin 30 39 31 40 JOBFILE = ../../../../tools/jobfile.py … … 39 48 BFD_NAME = elf32-tradbigmips 40 49 BFD = ecoff-bigmips 50 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32eb/bin 51 TARGET = mips-linux-gnu 41 52 endif 42 53 … … 44 55 BFD_NAME = elf32-tradlittlemips 45 56 BFD = binary 57 endif 58 59 ifeq ($(COMPILER),gcc_native) 60 CC = gcc 61 AS = as 62 LD = ld 63 OBJCOPY = objcopy 64 OBJDUMP = objdump 65 endif 66 67 ifeq ($(COMPILER),gcc_cross) 68 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 69 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 70 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 71 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 72 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 46 73 endif 47 74 -
boot/arch/ppc32/loader/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: ../../../../version ../../../../Makefile.co mmon ../../../../Makefile.config ../../../../config.h34 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
boot/arch/ppc32/loader/Makefile.build
re2b73d4f rfacebd56 32 32 33 33 include ../../../../version 34 include ../../../../Makefile.common35 34 include ../../../../Makefile.config 35 include ../../../../config.defs 36 36 include Makefile.common 37 37 include Makefile.toolchain -
boot/arch/ppc32/loader/Makefile.toolchain
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifndef CROSS_PREFIX 33 CROSS_PREFIX = /usr/local 34 endif 35 29 36 BFD_NAME = elf32-powerpc 30 37 BFD_ARCH = powerpc:common 38 TARGET = ppc-linux-gnu 39 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ppc32/bin 31 40 32 41 JOBFILE = ../../../../tools/jobfile.py 42 43 ifeq ($(COMPILER),gcc_native) 44 CC = gcc 45 AS = as 46 LD = ld 47 OBJCOPY = objcopy 48 OBJDUMP = objdump 49 endif 50 51 ifeq ($(COMPILER),gcc_cross) 52 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 53 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 54 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 55 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 56 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 57 endif 33 58 34 59 CFLAGS = \ -
boot/arch/sparc64/loader/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: ../../../../version ../../../../Makefile.co mmon ../../../../Makefile.config ../../../../config.h34 all: ../../../../version ../../../../Makefile.config ../../../../config.h ../../../../config.defs 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
boot/arch/sparc64/loader/Makefile.build
re2b73d4f rfacebd56 32 32 33 33 include ../../../../version 34 include ../../../../Makefile.common35 34 include ../../../../Makefile.config 35 include ../../../../config.defs 36 36 include Makefile.common 37 37 include Makefile.toolchain -
boot/arch/sparc64/loader/Makefile.toolchain
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifndef CROSS_PREFIX 33 CROSS_PREFIX = /usr/local 34 endif 35 29 36 BFD_NAME = elf64-sparc 30 37 BFD_ARCH = sparc 38 TARGET = sparc64-linux-gnu 39 TOOLCHAIN_DIR = $(CROSS_PREFIX)/sparc64/bin 31 40 32 41 JOBFILE = ../../../../tools/jobfile.py 42 43 ifeq ($(COMPILER),gcc_native) 44 CC = gcc 45 AS = as 46 LD = ld 47 OBJCOPY = objcopy 48 OBJDUMP = objdump 49 endif 50 51 ifeq ($(COMPILER),gcc_cross) 52 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 53 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 54 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 55 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 56 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 57 endif 33 58 34 59 CFLAGS = \ -
kernel/Makefile
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Configuration 30 # 31 32 ROOT_PATH = .. 33 34 VERSION_DEF = $(ROOT_PATH)/version 35 36 COMMON_MAKEFILE = $(ROOT_PATH)/Makefile.common 37 COMMON_HEADER = $(ROOT_PATH)/common.h 38 COMMON_HEADER_ARCH = arch/$(KARCH)/include/common.h 39 40 CONFIG_MAKEFILE = $(ROOT_PATH)/Makefile.config 41 CONFIG_HEADER = $(ROOT_PATH)/config.h 42 43 -include $(VERSION_DEF) 44 -include $(COMMON_MAKEFILE) 45 -include $(CONFIG_MAKEFILE) 46 47 ## Common names 48 # 49 50 DEPEND = Makefile.depend 51 DEPEND_PREV = $(DEPEND).prev 52 RAW = kernel.raw 53 BIN = kernel.bin 54 MAP = kernel.map 55 JOB = kernel.job 56 MAP_PREV = $(MAP).prev 57 DISASM = kernel.disasm 58 DUMP = kernel.dump 59 REAL_MAP = generic/src/debug/real_map 60 61 ARCH_INCLUDE = generic/include/arch 62 GENARCH_INCLUDE = generic/include/genarch 63 64 GENMAP = tools/genmap.py 65 JOBFILE = $(ROOT_PATH)/tools/jobfile.py 66 67 LINK = arch/$(KARCH)/_link.ld 68 EMPTY_MAP = generic/src/debug/empty_map.o 69 SIZEOK_MAP = generic/src/debug/sizeok_map.o 70 71 INCLUDES = generic/include 72 OPTIMIZATION = 3 29 include Makefile.common 73 30 74 31 .PHONY: all clean 75 32 76 all: $(VERSION_DEF) $(COMMON_MAKEFILE) $(COMMON_HEADER) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) $(BIN) $(DISASM) 77 -[ -f $(DEPEND) ] && cp -a $(DEPEND) $(DEPEND_PREV) 33 all: ../version ../Makefile.config ../config.h ../config.defs 34 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 35 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) 78 36 79 37 clean: 80 rm -f $(DEPEND) $(DEPEND_PREV) $(RAW) $(BIN) $(MAP) $(JOB) $(MAP_PREV) $(DISASM) $(DUMP) $(REAL_MAP).* $(ARCH_INCLUDE) $(GENARCH_INCLUDE) arch/*/_link.ld arch/*/include/common.h38 rm -f $(DEPEND) $(DEPEND_PREV) $(RAW) $(BIN) $(MAP) $(JOB) $(MAP_PREV) $(DISASM) $(DUMP) $(REAL_MAP).* $(ARCH_INCLUDE) $(GENARCH_INCLUDE) arch/*/_link.ld 81 39 find generic/src/ arch/*/src/ genarch/src/ test/ -name '*.o' -follow -exec rm \{\} \; 82 83 ## Common compiler flags84 #85 86 DEFS = -DKERNEL -DRELEASE=$(RELEASE) "-DNAME=$(NAME)" -D__$(BITS)_BITS__ -D__$(ENDIANESS)__87 88 GCC_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros ../config.h \89 -fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) \90 -finput-charset=UTF-8 -ffreestanding -fno-builtin -nostdlib -nostdinc \91 -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes \92 -Werror-implicit-function-declaration -Wwrite-strings \93 -Werror -pipe94 95 ICC_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros ../config.h \96 -ffreestanding -fno-builtin -nostdlib -nostdinc -Wall -Wmissing-prototypes \97 -Werror-implicit-function-declaration -Werror -wd17098 99 SUNCC_CFLAGS = -I$(INCLUDES) -xO$(OPTIMIZATION) \100 -xnolib -xc99=all -features=extensions \101 -erroff=E_ZERO_SIZED_STRUCT_UNION102 103 CLANG_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros ../config.h \104 -fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) \105 -finput-charset=UTF-8 -ffreestanding -fno-builtin -nostdlib -nostdinc \106 -Wall -Wextra -Wno-unused-parameter -Wmissing-prototypes \107 -Werror-implicit-function-declaration -Wwrite-strings \108 -pipe -arch $(CLANG_ARCH)109 110 LFLAGS = -M111 AFLAGS =112 113 -include arch/$(KARCH)/Makefile.inc114 -include genarch/Makefile.inc115 -include $(DEPEND)116 117 ## The at-sign118 #119 # The $(ATSIGN) variable holds the ASCII character representing the at-sign120 # ('@') used in various $(AS) constructs (e.g. @progbits). On architectures that121 # don't use '@' for starting a comment, $(ATSIGN) is merely '@'. However, on122 # those that do use it for starting a comment (e.g. arm32), $(ATSIGN) must be123 # defined as the percentile-sign ('%') in the architecture-dependent124 # Makefile.inc.125 #126 127 ATSIGN ?= @128 129 ## Cross-platform assembly to start a symtab.data section130 #131 132 SYMTAB_SECTION = ".section symtab.data, \"a\", $(ATSIGN)progbits;"133 134 ## Compilation options135 #136 137 ifeq ($(COMPILER),gcc_native)138 CFLAGS = $(GCC_CFLAGS)139 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)140 endif141 142 ifeq ($(COMPILER),gcc_cross)143 CFLAGS = $(GCC_CFLAGS)144 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)145 endif146 147 ifeq ($(COMPILER),icc)148 CFLAGS = $(ICC_CFLAGS)149 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)150 endif151 152 ifeq ($(COMPILER),suncc)153 CFLAGS = $(SUNCC_CFLAGS)154 DEFS += $(CONFIG_DEFS)155 DEPEND_DEFS = $(DEFS)156 endif157 158 ifeq ($(COMPILER),clang)159 CFLAGS = $(CLANG_CFLAGS)160 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)161 endif162 163 ## Generic kernel sources164 #165 166 GENERIC_SOURCES = \167 generic/src/adt/avl.c \168 generic/src/adt/bitmap.c \169 generic/src/adt/btree.c \170 generic/src/adt/hash_table.c \171 generic/src/adt/list.c \172 generic/src/console/chardev.c \173 generic/src/console/console.c \174 generic/src/cpu/cpu.c \175 generic/src/ddi/ddi.c \176 generic/src/ddi/irq.c \177 generic/src/ddi/device.c \178 generic/src/debug/symtab.c \179 generic/src/debug/stacktrace.c \180 generic/src/interrupt/interrupt.c \181 generic/src/main/main.c \182 generic/src/main/kinit.c \183 generic/src/main/uinit.c \184 generic/src/main/version.c \185 generic/src/main/shutdown.c \186 generic/src/proc/program.c \187 generic/src/proc/scheduler.c \188 generic/src/proc/thread.c \189 generic/src/proc/task.c \190 generic/src/proc/the.c \191 generic/src/proc/tasklet.c \192 generic/src/syscall/syscall.c \193 generic/src/syscall/copy.c \194 generic/src/mm/buddy.c \195 generic/src/mm/frame.c \196 generic/src/mm/page.c \197 generic/src/mm/tlb.c \198 generic/src/mm/as.c \199 generic/src/mm/backend_anon.c \200 generic/src/mm/backend_elf.c \201 generic/src/mm/backend_phys.c \202 generic/src/mm/slab.c \203 generic/src/lib/func.c \204 generic/src/lib/memstr.c \205 generic/src/lib/sort.c \206 generic/src/lib/string.c \207 generic/src/lib/elf.c \208 generic/src/lib/rd.c \209 generic/src/printf/printf_core.c \210 generic/src/printf/printf.c \211 generic/src/printf/snprintf.c \212 generic/src/printf/vprintf.c \213 generic/src/printf/vsnprintf.c \214 generic/src/time/clock.c \215 generic/src/time/timeout.c \216 generic/src/time/delay.c \217 generic/src/preempt/preemption.c \218 generic/src/synch/spinlock.c \219 generic/src/synch/condvar.c \220 generic/src/synch/rwlock.c \221 generic/src/synch/mutex.c \222 generic/src/synch/semaphore.c \223 generic/src/synch/smc.c \224 generic/src/synch/waitq.c \225 generic/src/synch/futex.c \226 generic/src/smp/ipi.c \227 generic/src/smp/smp.c \228 generic/src/ipc/ipc.c \229 generic/src/ipc/sysipc.c \230 generic/src/ipc/ipcrsc.c \231 generic/src/ipc/irq.c \232 generic/src/ipc/event.c \233 generic/src/security/cap.c \234 generic/src/sysinfo/sysinfo.c235 236 ## Kernel console support237 #238 239 ifeq ($(CONFIG_KCONSOLE),y)240 GENERIC_SOURCES += \241 generic/src/console/kconsole.c \242 generic/src/console/cmd.c243 endif244 245 ## Udebug interface sources246 #247 248 ifeq ($(CONFIG_UDEBUG),y)249 GENERIC_SOURCES += \250 generic/src/ipc/kbox.c \251 generic/src/udebug/udebug.c \252 generic/src/udebug/udebug_ops.c \253 generic/src/udebug/udebug_ipc.c254 endif255 256 ## Test sources257 #258 259 ifeq ($(CONFIG_TEST),y)260 CFLAGS += -Itest/261 GENERIC_SOURCES += \262 test/test.c \263 test/atomic/atomic1.c \264 test/btree/btree1.c \265 test/avltree/avltree1.c \266 test/fault/fault1.c \267 test/mm/falloc1.c \268 test/mm/falloc2.c \269 test/mm/mapping1.c \270 test/mm/slab1.c \271 test/mm/slab2.c \272 test/synch/rwlock1.c \273 test/synch/rwlock2.c \274 test/synch/rwlock3.c \275 test/synch/rwlock4.c \276 test/synch/rwlock5.c \277 test/synch/semaphore1.c \278 test/synch/semaphore2.c \279 test/print/print1.c \280 test/print/print2.c \281 test/print/print3.c \282 test/print/print4.c \283 test/thread/thread1.c \284 test/sysinfo/sysinfo1.c285 286 ifeq ($(KARCH),mips32)287 GENERIC_SOURCES += test/debug/mips1.c288 else289 GENERIC_SOURCES += test/debug/mips1_skip.c290 endif291 292 ifeq ($(KARCH),ia64)293 GENERIC_SOURCES += test/mm/purge1.c294 else295 GENERIC_SOURCES += test/mm/purge1_skip.c296 endif297 298 ifeq ($(CONFIG_FPU),y)299 ifeq ($(KARCH),ia32)300 TEST_FPU1 = y301 TEST_SSE1 = y302 GENERIC_SOURCES += test/fpu/fpu1_x86.c303 endif304 305 ifeq ($(KARCH),amd64)306 TEST_FPU1 = y307 TEST_SSE1 = y308 GENERIC_SOURCES += test/fpu/fpu1_x86.c309 endif310 311 ifeq ($(KARCH),ia64)312 TEST_FPU1 = y313 GENERIC_SOURCES += test/fpu/fpu1_ia64.c314 endif315 316 ifeq ($(KARCH),mips32)317 TEST_MIPS2 = y318 endif319 endif320 321 ifneq ($(TEST_FPU1),y)322 GENERIC_SOURCES += test/fpu/fpu1_skip.c323 endif324 325 ifeq ($(TEST_SSE1),y)326 GENERIC_SOURCES += test/fpu/sse1.c327 else328 GENERIC_SOURCES += test/fpu/sse1_skip.c329 endif330 331 ifeq ($(TEST_MIPS2),y)332 GENERIC_SOURCES += test/fpu/mips2.c333 else334 GENERIC_SOURCES += test/fpu/mips2_skip.c335 endif336 337 endif338 339 GENERIC_OBJECTS := $(addsuffix .o,$(basename $(GENERIC_SOURCES)))340 ARCH_OBJECTS := $(addsuffix .o,$(basename $(ARCH_SOURCES)))341 GENARCH_OBJECTS := $(addsuffix .o,$(basename $(GENARCH_SOURCES)))342 343 ifeq ($(CONFIG_SYMTAB),y)344 SYMTAB_OBJECTS := generic/src/debug/real_map.o345 else346 SYMTAB_OBJECTS :=347 endif348 349 350 351 $(BIN): $(RAW)352 $(OBJCOPY) -O $(BFD) $< $@353 354 $(DISASM): $(RAW)355 $(OBJDUMP) -d $< > $@356 357 $(RAW): $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(SYMTAB_OBJECTS)358 $(LD) -T $(LINK) $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SYMTAB_OBJECTS) -o $@ -Map $(MAP)359 360 $(LINK): $(LINK).in $(DEPEND)361 $(GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -D__LINKER__ -E -x c $< | grep -v "^\#" > $@362 363 %.o: %.S $(DEPEND)364 $(GCC) $(DEFS) $(GCC_CFLAGS) -D__ASM__ -c $< -o $@365 ifeq ($(PRECHECK),y)366 $(JOBFILE) $(JOB) $< $@ as asm/preproc $(DEFS) $(GCC_CFLAGS) -D__ASM__367 endif368 369 %.o: %.s $(DEPEND)370 $(AS) $(AFLAGS) $< -o $@371 ifeq ($(PRECHECK),y)372 $(JOBFILE) $(JOB) $< $@ as asm $(DEFS) $(CFLAGS) $(EXTRA_FLAGS)373 endif374 375 #376 # The FPU tests are the only objects for which we allow the compiler to generate377 # FPU instructions.378 #379 380 test/fpu/%.o: test/fpu/%.c $(DEPEND)381 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) -c $< -o $@382 ifeq ($(PRECHECK),y)383 $(JOBFILE) $(JOB) $< $@ cc test $(DEFS) $(CFLAGS) $(EXTRA_FLAGS)384 endif385 386 #387 # Ordinary objects.388 #389 390 %.o: %.c $(DEPEND)391 $(CC) $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) $(FPU_NO_CFLAGS) -c $< -o $@392 ifeq ($(PRECHECK),y)393 $(JOBFILE) $(JOB) $< $@ cc core $(DEFS) $(CFLAGS) $(EXTRA_FLAGS) $(FPU_NO_CFLAGS)394 endif395 396 $(REAL_MAP).o: $(REAL_MAP).bin397 echo $(SYMTAB_SECTION)" .incbin \"$<\"" | $(AS) $(AFLAGS) -o $@398 399 $(REAL_MAP).bin: $(LINK) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS)400 echo $(SYMTAB_SECTION) | $(AS) $(AFLAGS) -o $(EMPTY_MAP)401 $(LD) -T $(LINK) $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(EMPTY_MAP) -o $@ -Map $(MAP_PREV)402 $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > $(DUMP)403 $(GENMAP) $(MAP_PREV) $(DUMP) $@404 405 # Do it once again, this time to get correct even the symbols406 # on architectures that have bss after symtab407 408 echo $(SYMTAB_SECTION)" .incbin \"$@\"" | $(AS) $(AFLAGS) -o $(SIZEOK_MAP)409 $(LD) -T $(LINK) $(LFLAGS) $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) $(EXTRA_OBJECTS) $(SIZEOK_MAP) -o $@ -Map $(MAP_PREV)410 $(OBJDUMP) -t $(ARCH_OBJECTS) $(GENARCH_OBJECTS) $(GENERIC_OBJECTS) > $(DUMP)411 $(GENMAP) $(MAP_PREV) $(DUMP) $@412 413 $(DEPEND): $(ARCH_INCLUDE) $(GENARCH_INCLUDE) $(COMMON_HEADER_ARCH)414 makedepend -f - -- $(DEPEND_DEFS) $(CFLAGS) -- $(ARCH_SOURCES) $(GENARCH_SOURCES) $(GENERIC_SOURCES) > $@ 2> /dev/null415 -[ -f $(DEPEND_PREV) ] && diff -q $(DEPEND_PREV) $@ && mv -f $(DEPEND_PREV) $@416 417 $(ARCH_INCLUDE): arch/$(KARCH)/include/418 ln -sfn ../../$< $@419 420 $(GENARCH_INCLUDE): genarch/include/421 ln -sfn ../../$< $@422 423 $(COMMON_HEADER_ARCH): $(COMMON_HEADER)424 ln -sfn ../../../$< $@ -
kernel/arch/abs32le/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD = binary 30 33 31 34 ifeq ($(COMPILER),gcc_cross) 35 TOOLCHAIN_DIR = $(CROSS_PREFIX)/$(CROSS_TARGET) 36 32 37 ifeq ($(CROSS_TARGET),arm32) 38 TARGET = arm-linux-gnu 33 39 ATSIGN = % 34 40 endif 35 41 42 ifeq ($(CROSS_TARGET),ia32) 43 TARGET = i686-pc-linux-gnu 44 endif 45 36 46 ifeq ($(CROSS_TARGET),mips32) 47 TARGET = mipsel-linux-gnu 37 48 GCC_CFLAGS += -mno-abicalls 38 49 endif -
kernel/arch/amd64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf64-x86-64 30 33 BFD_ARCH = i386:x86-64 31 34 BFD = binary 35 TARGET = amd64-linux-gnu 32 36 CLANG_ARCH = x86_64 37 TOOLCHAIN_DIR = $(CROSS_PREFIX)/amd64 33 38 34 39 FPU_NO_CFLAGS = -mno-sse -mno-sse2 -
kernel/arch/arm32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf32-littlearm 30 33 BFD_ARCH = arm 31 34 BFD = binary 35 TARGET = arm-linux-gnu 36 TOOLCHAIN_DIR = $(CROSS_PREFIX)/arm32 32 37 33 38 ATSIGN = % -
kernel/arch/arm32/src/dummy.S
re2b73d4f rfacebd56 1 1 # 2 # Copyright (c) 2007 Michal Kebr t, Pavel Jancik, Petr Stepan2 # Copyright (c) 2007 Michal Kebry, Pavel Jancik, Petr Stepan 3 3 # All rights reserved. 4 4 # -
kernel/arch/ia32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf32-i386 30 33 BFD_ARCH = i386 31 34 BFD = binary 35 TARGET = i686-pc-linux-gnu 32 36 CLANG_ARCH = i386 37 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia32 33 38 34 39 BITS = 32 … … 48 53 SUNCC_CFLAGS += -xarch=ssea 49 54 endif 50 51 55 ifeq ($(PROCESSOR),athlon_mp) 52 56 CMN2 = -march=athlon-mp 53 57 SUNCC_CFLAGS += xarch=ssea 54 58 endif 55 56 59 ifeq ($(PROCESSOR),pentium3) 57 60 CMN2 = -march=pentium3 58 61 SUNCC_CFLAGS += -xarch=sse 59 62 endif 60 61 63 ifeq ($(PROCESSOR),pentium4) 62 64 CMN2 = -march=pentium4 63 65 SUNCC_CFLAGS += -xarch=sse2 64 66 endif 65 66 67 ifeq ($(PROCESSOR),core) 67 68 CMN2 = -march=prescott -
kernel/arch/ia32/include/types.h
re2b73d4f rfacebd56 27 27 */ 28 28 29 /** @addtogroup ia32 29 /** @addtogroup ia32 30 30 * @{ 31 31 */ … … 36 36 #define KERN_ia32_TYPES_H_ 37 37 38 #include <arch/common.h> 38 typedef signed char int8_t; 39 typedef signed short int16_t; 40 typedef signed long int32_t; 41 typedef signed long long int64_t; 42 43 typedef unsigned char uint8_t; 44 typedef unsigned short uint16_t; 45 typedef unsigned long uint32_t; 46 typedef unsigned long long uint64_t; 39 47 40 48 typedef uint32_t size_t; -
kernel/arch/ia64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf64-little 30 33 BFD_ARCH = ia64-elf64 34 TARGET = ia64-pc-linux-gnu 35 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64 31 36 32 37 CMN1 = -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127 -
kernel/arch/mips32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_ARCH = mips 30 33 BFD = binary 34 TARGET = mipsel-linux-gnu 35 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32 36 31 37 GCC_CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3 32 38 … … 42 48 ifeq ($(MACHINE),bgxemul) 43 49 BFD_NAME = elf32-tradbigmips 50 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32eb 51 TARGET = mips-linux-gnu 44 52 ENDIANESS = BE 45 53 GCC_CFLAGS += -D__BE__ -
kernel/arch/ppc32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf32-powerpc 30 33 BFD_ARCH = powerpc:common 31 34 BFD = binary 35 TARGET = ppc-linux-gnu 36 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ppc32 32 37 33 38 GCC_CFLAGS += -mcpu=powerpc -msoft-float -m32 -
kernel/arch/sparc64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 29 32 BFD_NAME = elf64-sparc 30 33 BFD_ARCH = sparc 31 34 BFD = binary 35 TARGET = sparc64-linux-gnu 36 TOOLCHAIN_DIR = $(CROSS_PREFIX)/sparc64 32 37 33 38 GCC_CFLAGS += -m64 -mcpu=ultrasparc -
kernel/tools/genmap.py
re2b73d4f rfacebd56 1 1 #!/usr/bin/env python 2 #3 # Copyright (c) 2006 Ondrej Palkovsky4 # All rights reserved.5 #6 # Redistribution and use in source and binary forms, with or without7 # modification, are permitted provided that the following conditions8 # are met:9 #10 # - Redistributions of source code must retain the above copyright11 # notice, this list of conditions and the following disclaimer.12 # - Redistributions in binary form must reproduce the above copyright13 # notice, this list of conditions and the following disclaimer in the14 # documentation and/or other materials provided with the distribution.15 # - The name of the author may not be used to endorse or promote products16 # derived from this software without specific prior written permission.17 #18 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR19 # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES20 # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.21 # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,22 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT23 # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.28 #29 30 """31 Create binary symbol map out of linker map file32 """33 2 34 3 import sys … … 36 5 import re 37 6 38 MAXSTRING = 63 39 symtabfmt = "<Q%ds" % (MAXSTRING + 1) 7 MAXSTRING=63 8 symtabfmt = "<Q%ds" % (MAXSTRING+1) 9 40 10 41 11 funcline = re.compile(r'([0-9a-f]+)\s+[lg]\s+.\s+\.text\s+([0-9a-f]+)\s+(.*)$') … … 43 13 dataline = re.compile(r'([0-9a-f]+)\s+[lg]\s+[a-zA-Z]\s+\.data\s+([0-9a-f]+)\s+(.*)$') 44 14 fileexp = re.compile(r'([^\s]+):\s+file format') 15 def read_obdump(inp): 16 funcs = {} 17 data = {} 18 bss ={} 19 fname = '' 20 for line in inp: 21 line = line.strip() 22 res = funcline.match(line) 23 if res: 24 funcs.setdefault(fname,[]).append((int(res.group(1),16), 25 res.group(3))) 26 continue 27 res = bssline.match(line) 28 if res: 29 start = int(res.group(1),16) 30 end = int(res.group(2),16) 31 if end: 32 bss.setdefault(fname,[]).append((start,res.group(3))) 33 res = dataline.match(line) 34 if res: 35 start = int(res.group(1),16) 36 end = int(res.group(2),16) 37 if end: 38 data.setdefault(fname,[]).append((start,res.group(3))) 39 res = fileexp.match(line) 40 if res: 41 fname = res.group(1) 42 continue 43 44 return { 45 'text' : funcs, 46 'bss' : bss, 47 'data' : data 48 } 49 45 50 startfile = re.compile(r'\.(text|bss|data)\s+(0x[0-9a-f]+)\s+0x[0-9a-f]+\s+(.*)$') 51 def generate(kmapf, obmapf, out): 52 obdump = read_obdump(obmapf) 46 53 47 def read_obdump(inp): 48 "Parse input" 49 50 funcs = {} 51 data = {} 52 bss = {} 53 fname = '' 54 55 for line in inp: 56 line = line.strip() 57 res = funcline.match(line) 58 if (res): 59 funcs.setdefault(fname, []).append((int(res.group(1), 16), res.group(3))) 60 continue 61 62 res = bssline.match(line) 63 if (res): 64 start = int(res.group(1), 16) 65 end = int(res.group(2), 16) 66 if (end): 67 bss.setdefault(fname, []).append((start, res.group(3))) 68 69 res = dataline.match(line) 70 if (res): 71 start = int(res.group(1), 16) 72 end = int(res.group(2), 16) 73 if (end): 74 data.setdefault(fname, []).append((start, res.group(3))) 75 76 res = fileexp.match(line) 77 if (res): 78 fname = res.group(1) 79 continue 80 81 return {'text' : funcs, 'bss' : bss, 'data' : data} 54 def sorter(x,y): 55 return cmp(x[0],y[0]) 82 56 83 def generate(kmapf, obmapf, out): 84 "Generate output file" 85 86 obdump = read_obdump(obmapf) 87 88 def sorter(x,y): 89 return cmp(x[0],y[0]) 90 91 for line in kmapf: 92 line = line.strip() 93 res = startfile.match(line) 94 95 if ((res) and (obdump[res.group(1)].has_key(res.group(3)))): 96 offset = int(res.group(2), 16) 97 fname = res.group(3) 98 symbols = obdump[res.group(1)][fname] 99 symbols.sort(sorter) 100 for addr, symbol in symbols: 101 value = fname + ':' + symbol 102 data = struct.pack(symtabfmt, addr + offset, value[:MAXSTRING]) 103 out.write(data) 104 105 out.write(struct.pack(symtabfmt, 0, '')) 57 for line in kmapf: 58 line = line.strip() 59 res = startfile.match(line) 60 61 if res and obdump[res.group(1)].has_key(res.group(3)): 62 offset = int(res.group(2),16) 63 fname = res.group(3) 64 symbols = obdump[res.group(1)][fname] 65 symbols.sort(sorter) 66 for addr,symbol in symbols: 67 value = fname + ':' + symbol 68 data = struct.pack(symtabfmt,addr+offset,value[:MAXSTRING]) 69 out.write(data) 70 71 out.write(struct.pack(symtabfmt,0,'')) 106 72 107 73 def main(): 108 if (len(sys.argv) != 4): 109 print "Usage: %s <kernel.map> <nm dump> <output.bin>" % sys.argv[0] 110 return 1 111 112 kmapf = open(sys.argv[1], 'r') 113 obmapf = open(sys.argv[2], 'r') 114 out = open(sys.argv[3], 'w') 115 116 generate(kmapf, obmapf, out) 117 118 kmapf.close() 119 obmapf.close() 120 out.close() 74 if len(sys.argv) != 4: 75 print "Usage: %s <kernel.map> <nm dump> <output.bin>" % sys.argv[0] 76 sys.exit(1) 77 78 kmapf = open(sys.argv[1],'r') 79 obmapf = open(sys.argv[2],'r') 80 out = open(sys.argv[3],'w') 81 generate(kmapf,obmapf,out) 82 kmapf.close() 83 obmapf.close() 84 out.close() 121 85 122 86 if __name__ == '__main__': 123 sys.exit(main())87 main() -
tools/config.py
re2b73d4f rfacebd56 28 28 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 29 # 30 31 30 """ 32 31 HelenOS configuration system 33 32 """ 34 35 33 import sys 36 34 import os … … 43 41 MAKEFILE = 'Makefile.config' 44 42 MACROS = 'config.h' 43 DEFS = 'config.defs' 45 44 PRECONF = 'defaults' 46 45 … … 224 223 return True 225 224 226 def create_output(mkname, mcname, d efaults, ask_names):225 def create_output(mkname, mcname, dfname, defaults, ask_names): 227 226 "Create output configuration" 228 227 … … 230 229 231 230 sys.stderr.write("Fetching current revision identifier ... ") 232 233 try: 234 version = subprocess.Popen(['bzr', 'version-info', '--custom', '--template={clean}:{revno}:{revision_id}'], stdout = subprocess.PIPE).communicate()[0].split(':') 235 sys.stderr.write("ok\n") 236 except: 237 version = [1, "unknown", "unknown"] 238 sys.stderr.write("failed\n") 231 version = subprocess.Popen(['bzr', 'version-info', '--custom', '--template={clean}:{revno}:{revision_id}'], stdout = subprocess.PIPE).communicate()[0].split(':') 232 sys.stderr.write("OK\n") 239 233 240 234 if (len(version) == 3): … … 248 242 outmk = file(mkname, 'w') 249 243 outmc = file(mcname, 'w') 244 outdf = file(dfname, 'w') 250 245 251 246 outmk.write('#########################################\n') … … 257 252 outmc.write(' ***************************************/\n\n') 258 253 259 defs = 'CONFIG_DEFS =' 254 outdf.write('#########################################\n') 255 outdf.write('## AUTO-GENERATED FILE, DO NOT EDIT!!! ##\n') 256 outdf.write('#########################################\n\n') 257 outdf.write('CONFIG_DEFS =') 260 258 261 259 for varname, vartype, name, choices, cond in ask_names: … … 275 273 if (default == "y"): 276 274 outmc.write('/* %s */\n#define %s\n\n' % (name, varname)) 277 defs += ' -D%s' % varname275 outdf.write(' -D%s' % varname) 278 276 else: 279 277 outmc.write('/* %s */\n#define %s %s\n#define %s_%s\n\n' % (name, varname, default, varname, default)) 280 defs += ' -D%s=%s -D%s_%s' % (varname, default, varname, default)278 outdf.write(' -D%s=%s -D%s_%s' % (varname, default, varname, default)) 281 279 282 280 if (revision is not None): 283 281 outmk.write('REVISION = %s\n' % revision) 284 282 outmc.write('#define REVISION %s\n' % revision) 285 defs += ' "-DREVISION=%s"' % revision283 outdf.write(' "-DREVISION=%s"' % revision) 286 284 287 285 outmk.write('TIMESTAMP = %s\n' % timestamp) 288 286 outmc.write('#define TIMESTAMP %s\n' % timestamp) 289 defs += ' "-DTIMESTAMP=%s"\n' % timestamp 290 291 outmk.write(defs) 287 outdf.write(' "-DTIMESTAMP=%s"\n' % timestamp) 292 288 293 289 outmk.close() 294 290 outmc.close() 291 outdf.close() 295 292 296 293 def sorted_dir(root): … … 351 348 if ((len(sys.argv) >= 3) and (sys.argv[2] == 'default')): 352 349 if (check_choices(defaults, ask_names)): 353 create_output(MAKEFILE, MACROS, defaults, ask_names)350 create_output(MAKEFILE, MACROS, DEFS, defaults, ask_names) 354 351 return 0 355 352 … … 469 466 xtui.screen_done(screen) 470 467 471 create_output(MAKEFILE, MACROS, defaults, ask_names)468 create_output(MAKEFILE, MACROS, DEFS, defaults, ask_names) 472 469 return 0 473 470 -
tools/jobfile.py
re2b73d4f rfacebd56 27 27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 28 # 29 30 29 """ 31 30 Add a source/object file pair to a checker jobfile -
tools/mkfat.py
re2b73d4f rfacebd56 27 27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 28 # 29 30 29 """ 31 30 FAT creator -
tools/mkhord.py
re2b73d4f rfacebd56 27 27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 28 # 29 30 29 """ 31 30 HORD encapsulator -
tools/mktmpfs.py
re2b73d4f rfacebd56 27 27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 28 # 29 30 29 """ 31 30 TMPFS creator -
uspace/Makefile
re2b73d4f rfacebd56 30 30 # 31 31 32 -include ../Makefile.common33 32 -include ../Makefile.config 34 33 -
uspace/app/Makefile.common
re2b73d4f rfacebd56 60 60 all: \ 61 61 $(LIBC_PREFIX)/../../../version \ 62 $(LIBC_PREFIX)/../../../Makefile.common \63 62 $(LIBC_PREFIX)/../../../Makefile.config \ 64 63 $(LIBC_PREFIX)/../../../config.h \ 64 $(LIBC_PREFIX)/../../../config.defs \ 65 65 $(LIBS) \ 66 66 \ -
uspace/lib/Makefile.common
re2b73d4f rfacebd56 50 50 OBJECTS = $(addsuffix .o,$(basename $(SOURCES))) 51 51 52 -include $(USPACE_PREFIX)/../Makefile.common53 52 -include $(USPACE_PREFIX)/../Makefile.config 54 53 include $(LIBC_PREFIX)/Makefile.toolchain … … 60 59 all: \ 61 60 $(LIBC_PREFIX)/../../../version \ 62 $(LIBC_PREFIX)/../../../Makefile.common \63 61 $(LIBC_PREFIX)/../../../Makefile.config \ 64 62 $(LIBC_PREFIX)/../../../config.h \ 63 $(LIBC_PREFIX)/../../../config.defs \ 65 64 $(LIBS) \ 66 65 \ -
uspace/lib/libc/Makefile
re2b73d4f rfacebd56 28 28 # 29 29 30 -include ../../../Makefile.common31 30 -include ../../../Makefile.config 32 31 -
uspace/lib/libc/Makefile.toolchain
re2b73d4f rfacebd56 53 53 AFLAGS = 54 54 55 ## Cross-toolchain prefix 56 # 57 58 ifndef CROSS_PREFIX 59 CROSS_PREFIX = /usr/local 60 endif 61 55 62 ## Setup platform configuration 56 63 # 57 64 58 -include $(LIBC_PREFIX)/../../../Makefile.common59 65 -include $(LIBC_PREFIX)/../../../Makefile.config 66 -include $(LIBC_PREFIX)/../../../config.defs 60 67 -include $(LIBC_PREFIX)/arch/$(UARCH)/Makefile.inc 61 68 62 ## Compilation options 69 ## Simple detection of the host system 70 # 71 HOST = $(shell uname) 72 73 ## On Solaris, some utilities have different names 74 # 75 ifeq ($(HOST),SunOS) 76 BINUTILS_PREFIX = "g" 77 else 78 BINUTILS_PREFIX = "" 79 endif 80 81 ## Toolchain configuration 63 82 # 64 83 … … 66 85 67 86 ifeq ($(COMPILER),gcc_cross) 87 CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc 88 GCC = $(CC) 89 AS = $(TOOLCHAIN_DIR)/$(TARGET)-as 90 LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld 91 AR = $(TOOLCHAIN_DIR)/$(TARGET)-ar 92 OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy 93 OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump 68 94 CFLAGS = $(GCC_CFLAGS) 69 95 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) … … 71 97 72 98 ifeq ($(COMPILER),gcc_native) 99 CC = gcc 100 GCC = $(CC) 101 AS = $(BINUTILS_PREFIX)as 102 LD = $(BINUTILS_PREFIX)ld 103 AR = $(BINUTILS_PREFIX)ar 104 OBJCOPY = $(BINUTILS_PREFIX)objcopy 105 OBJDUMP = $(BINUTILS_PREFIX)objdump 73 106 CFLAGS = $(GCC_CFLAGS) 74 107 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) … … 76 109 77 110 ifeq ($(COMPILER),icc) 111 CC = icc 112 GCC = gcc 113 AS = as 114 LD = ld 115 AR = ar 116 OBJCOPY = objcopy 117 OBJDUMP = objdump 78 118 CFLAGS = $(ICC_CFLAGS) 79 119 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) … … 81 121 82 122 ifeq ($(COMPILER),clang) 123 CC = clang 124 GCC = gcc 125 AS = $(BINUTILS_PREFIX)as 126 LD = $(BINUTILS_PREFIX)ld 127 AR = $(BINUTILS_PREFIX)ar 128 OBJCOPY = $(BINUTILS_PREFIX)objcopy 129 OBJDUMP = $(BINUTILS_PREFIX)objdump 83 130 CFLAGS = $(CLANG_CFLAGS) 84 131 DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS) -
uspace/lib/libc/arch/abs32le/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 ifeq ($(COMPILER),gcc_cross) 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/$(CROSS_TARGET)/bin 34 35 ifeq ($(CROSS_TARGET),arm32) 36 TARGET = arm-linux-gnu 37 endif 38 39 ifeq ($(CROSS_TARGET),ia32) 40 TARGET = i686-pc-linux-gnu 41 endif 42 43 ifeq ($(CROSS_TARGET),mips32) 44 TARGET = mipsel-linux-gnu 45 endif 46 endif 47 29 48 ifeq ($(COMPILER),clang) 30 49 CLANG_ARCH = i386 -
uspace/lib/libc/arch/amd64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = amd64-linux-gnu 29 33 CLANG_ARCH = x86_64 34 TOOLCHAIN_DIR = $(CROSS_PREFIX)/amd64/bin 30 35 31 36 ARCH_SOURCES = \ -
uspace/lib/libc/arch/arm32/Makefile.inc
re2b73d4f rfacebd56 28 28 # 29 29 30 ## Toolchain configuration 31 # 32 33 TARGET = arm-linux-gnu 34 TOOLCHAIN_DIR = $(CROSS_PREFIX)/arm32/bin 35 30 36 ARCH_SOURCES = \ 31 37 arch/$(UARCH)/src/entry.s \ -
uspace/lib/libc/arch/ia32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = i686-pc-linux-gnu 29 33 CLANG_ARCH = i386 34 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia32/bin 30 35 31 36 ARCH_SOURCES = \ -
uspace/lib/libc/arch/ia64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = ia64-pc-linux-gnu 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64/bin 34 29 35 ARCH_SOURCES = \ 30 36 arch/$(UARCH)/src/entry.s \ -
uspace/lib/libc/arch/mips32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = mipsel-linux-gnu 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32/bin 34 29 35 ARCH_SOURCES = \ 30 36 arch/$(UARCH)/src/entry.s \ -
uspace/lib/libc/arch/mips32eb/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = mips-linux-gnu 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32eb/bin 34 29 35 ARCH_SOURCES = \ 30 36 arch/$(UARCH)/src/entry.s \ -
uspace/lib/libc/arch/ppc32/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = ppc-linux-gnu 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/ppc32/bin 34 29 35 ARCH_SOURCES = \ 30 36 arch/$(UARCH)/src/entry.s \ -
uspace/lib/libc/arch/sparc64/Makefile.inc
re2b73d4f rfacebd56 27 27 # 28 28 29 ## Toolchain configuration 30 # 31 32 TARGET = sparc64-linux-gnu 33 TOOLCHAIN_DIR = $(CROSS_PREFIX)/sparc64/bin 34 29 35 ARCH_SOURCES = \ 30 36 arch/$(UARCH)/src/entry.s \ -
uspace/srv/Makefile.common
re2b73d4f rfacebd56 64 64 all: \ 65 65 $(LIBC_PREFIX)/../../../version \ 66 $(LIBC_PREFIX)/../../../Makefile.common \67 66 $(LIBC_PREFIX)/../../../Makefile.config \ 68 67 $(LIBC_PREFIX)/../../../config.h \ 68 $(LIBC_PREFIX)/../../../config.defs \ 69 69 $(LIBS) \ 70 70 \ … … 77 77 find . -name '*.o' -follow -exec rm \{\} \; 78 78 79 build: 79 build: 80 80 81 81 -include $(DEPEND) -
uspace/srv/hid/char_mouse/chardev.c
re2b73d4f rfacebd56 48 48 static int dev_phone; 49 49 50 #define NAME " char_mouse"50 #define NAME "kbd" 51 51 52 52 int mouse_port_init(void) -
uspace/srv/hid/char_mouse/proto/ps2.c
re2b73d4f rfacebd56 36 36 37 37 #include <stdio.h> 38 #include <mouse_p ort.h>38 #include <mouse_proto.h> 39 39 #include <char_mouse.h> 40 #include <mouse_proto.h>41 40 42 41 #define BUFSIZE 3 43 44 #define PS2_MOUSE_OUT_INIT 0xf445 #define PS2_MOUSE_ACK 0xfa46 42 47 43 typedef struct { … … 71 67 int mouse_proto_init(void) 72 68 { 73 mouse_port_write(PS2_MOUSE_OUT_INIT);74 69 return 0; 75 70 } -
uspace/srv/hid/console/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: $(LIBC_PREFIX)/../../../Makefile.co mmon $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h$(LIBS)34 all: $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h $(LIBC_PREFIX)/../../../config.defs $(LIBS) 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
uspace/srv/hid/fb/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: $(LIBC_PREFIX)/../../../Makefile.co mmon $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h$(LIBS)34 all: $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h $(LIBC_PREFIX)/../../../config.defs $(LIBS) 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
uspace/srv/hid/kbd/Makefile
re2b73d4f rfacebd56 32 32 .PHONY: all clean 33 33 34 all: $(LIBC_PREFIX)/../../../Makefile.co mmon $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h$(LIBS)34 all: $(LIBC_PREFIX)/../../../Makefile.config $(LIBC_PREFIX)/../../../config.h $(LIBC_PREFIX)/../../../config.defs $(LIBS) 35 35 -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV) 36 36 $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK) -
uspace/srv/hw/char/i8042/i8042.c
re2b73d4f rfacebd56 68 68 #define i8042_KBD_TRANSLATE 0x40 69 69 70 /* Mouse constants */ 71 #define MOUSE_OUT_INIT 0xf4 72 #define MOUSE_ACK 0xfa 70 73 71 74 enum { … … 174 177 async_set_interrupt_received(i8042_irq_handler); 175 178 176 /* Disable kbd and aux */ 177 wait_ready(); 179 /* Disable kbd, enable mouse */ 178 180 pio_write_8(&i8042->status, i8042_CMD_WRITE_CMDB); 179 181 wait_ready(); 180 pio_write_8(&i8042->data, i8042_KBD_DISABLE | i8042_AUX_DISABLE); 182 pio_write_8(&i8042->status, i8042_CMD_WRITE_CMDB); 183 wait_ready(); 184 pio_write_8(&i8042->data, i8042_KBD_DISABLE); 185 wait_ready(); 181 186 182 187 /* Flush all current IO */ 183 188 while (pio_read_8(&i8042->status) & i8042_OUTPUT_FULL) 184 189 (void) pio_read_8(&i8042->data); 190 191 i8042_port_write(DEVID_AUX, MOUSE_OUT_INIT); 185 192 186 193 i8042_kbd.cmds[0].addr = (void *) &((i8042_t *) i8042_kernel)->status; … … 188 195 ipc_register_irq(sysinfo_value("i8042.inr_a"), device_assign_devno(), 0, &i8042_kbd); 189 196 ipc_register_irq(sysinfo_value("i8042.inr_b"), device_assign_devno(), 0, &i8042_kbd); 190 printf("i8042: registered for interrupts %d and %d\n", 191 sysinfo_value("i8042.inr_a"), sysinfo_value("i8042.inr_b")); 192 193 wait_ready(); 197 194 198 pio_write_8(&i8042->status, i8042_CMD_WRITE_CMDB); 195 199 wait_ready(); 196 200 pio_write_8(&i8042->data, i8042_KBD_IE | i8042_KBD_TRANSLATE | 197 201 i8042_AUX_IE); 202 wait_ready(); 198 203 199 204 return 0; … … 266 271 { 267 272 if (devid == DEVID_AUX) { 273 pio_write_8(&i8042->status, i8042_CMD_WRITE_AUX); 268 274 wait_ready(); 269 pio_write_8(&i8042->status, i8042_CMD_WRITE_AUX); 270 } 271 wait_ready(); 275 } 272 276 pio_write_8(&i8042->data, data); 277 wait_ready(); 273 278 } 274 279 -
uspace/srv/loader/Makefile
re2b73d4f rfacebd56 28 28 # 29 29 30 -include ../../../Makefile.common31 30 -include ../../../Makefile.config 32 31 -include arch/$(UARCH)/Makefile.inc -
uspace/srv/net/Makefile
re2b73d4f rfacebd56 27 27 # 28 28 29 include ../../../Makefile.common30 29 include ../../../Makefile.config 31 30 -
uspace/srv/net/app/echo/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include ../../../../../Makefile.common35 34 include ../../../../../Makefile.config 36 35 -
uspace/srv/net/app/nettest1/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include ../../../../../Makefile.common35 34 include ../../../../../Makefile.config 36 35 -
uspace/srv/net/app/nettest2/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include ../../../../../Makefile.common35 34 include ../../../../../Makefile.config 36 35 -
uspace/srv/net/app/ping/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include ../../../../../Makefile.common35 34 include ../../../../../Makefile.config 36 35 -
uspace/srv/net/il/ip/ip.c
re2b73d4f rfacebd56 895 895 ip_pseudo_header_ref header; 896 896 size_t headerlen; 897 device_id_t device_id;898 897 899 898 *answer_count = 0; … … 922 921 case NET_IP_GET_ROUTE: 923 922 ERROR_PROPAGATE(data_receive((void **) &addr, &addrlen)); 924 ERROR_PROPAGATE(ip_get_route_req(0, IP_GET_PROTOCOL(call), addr, (socklen_t) addrlen, 925 &device_id, &header, &headerlen)); 926 *IPC_SET_DEVICE(answer) = device_id; 923 ERROR_PROPAGATE(ip_get_route_req(0, IP_GET_PROTOCOL(call), addr, (socklen_t) addrlen, IPC_SET_DEVICE(answer), &header, &headerlen)); 927 924 *IP_SET_HEADERLEN(answer) = headerlen; 928 925 *answer_count = 2; -
uspace/srv/net/il/ip/ip_messages.h
re2b73d4f rfacebd56 82 82 * @param[out] answer The message answer structure. 83 83 */ 84 #define IP_SET_HEADERLEN(answer) ( &IPC_GET_ARG2(*answer))84 #define IP_SET_HEADERLEN(answer) ((size_t *) &IPC_GET_ARG2(*answer)) 85 85 86 86 /** Returns the network mask message parameter. -
uspace/srv/net/messages.h
re2b73d4f rfacebd56 391 391 * @param[out] answer The message answer structure. 392 392 */ 393 #define IPC_SET_DEVICE(answer) ( &IPC_GET_ARG1(*answer))393 #define IPC_SET_DEVICE(answer) ((device_id_t *) &IPC_GET_ARG1(*answer)) 394 394 395 395 /** Sets the minimum address length in the message answer. 396 396 * @param[out] answer The message answer structure. 397 397 */ 398 #define IPC_SET_ADDR(answer) ( &IPC_GET_ARG1(*answer))398 #define IPC_SET_ADDR(answer) ((size_t *) &IPC_GET_ARG1(*answer)) 399 399 400 400 /*@}*/ … … 407 407 * @param[out] answer The message answer structure. 408 408 */ 409 #define IPC_SET_PREFIX(answer) ( &IPC_GET_ARG2(*answer))409 #define IPC_SET_PREFIX(answer) ((size_t *) &IPC_GET_ARG2(*answer)) 410 410 411 411 /*@}*/ … … 418 418 * @param[out] answer The message answer structure. 419 419 */ 420 #define IPC_SET_CONTENT(answer) ( &IPC_GET_ARG3(*answer))420 #define IPC_SET_CONTENT(answer) ((size_t *) &IPC_GET_ARG3(*answer)) 421 421 422 422 /*@}*/ … … 429 429 * @param[out] answer The message answer structure. 430 430 */ 431 #define IPC_SET_SUFFIX(answer) ( &IPC_GET_ARG4(*answer))431 #define IPC_SET_SUFFIX(answer) ((size_t *) &IPC_GET_ARG4(*answer)) 432 432 433 433 /*@}*/ -
uspace/srv/net/net/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include $(NET_BASE)../../../Makefile.common35 34 include $(NET_BASE)../../../Makefile.config 36 35 -
uspace/srv/net/net/start/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include ../../../../../Makefile.common35 34 include ../../../../../Makefile.config 36 35 -
uspace/srv/net/netif/dp8390/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include $(NET_BASE)../../../Makefile.common35 34 include $(NET_BASE)../../../Makefile.config 36 35 -
uspace/srv/net/netif/lo/Makefile
re2b73d4f rfacebd56 32 32 STRUCTURES = $(NET_BASE)structures/ 33 33 34 include $(NET_BASE)../../../Makefile.common35 34 include $(NET_BASE)../../../Makefile.config 36 35 -
uspace/srv/net/socket/socket_messages.h
re2b73d4f rfacebd56 115 115 * @param[out] answer The message answer structure. 116 116 */ 117 #define SOCKET_SET_SOCKET_ID(answer) &IPC_GET_ARG1(answer)117 #define SOCKET_SET_SOCKET_ID(answer) (int *) &IPC_GET_ARG1(answer) 118 118 119 119 /** Returns the socket identifier message parameter. 120 120 * @param[in] call The message call structure. 121 121 */ 122 #define SOCKET_GET_SOCKET_ID(call) (int) IPC_GET_ARG1(call)122 #define SOCKET_GET_SOCKET_ID(call) (int) IPC_GET_ARG1(call) 123 123 124 124 /** Sets the read data length in the message answer. 125 125 * @param[out] answer The message answer structure. 126 126 */ 127 #define SOCKET_SET_READ_DATA_LENGTH(answer) &IPC_GET_ARG1(answer)127 #define SOCKET_SET_READ_DATA_LENGTH(answer) (int *) &IPC_GET_ARG1(answer) 128 128 129 129 /** Returns the read data length message parameter. 130 130 * @param[in] call The message call structure. 131 131 */ 132 #define SOCKET_GET_READ_DATA_LENGTH(call) (int) IPC_GET_ARG1(call)132 #define SOCKET_GET_READ_DATA_LENGTH(call) (int) IPC_GET_ARG1(call) 133 133 134 134 /** Returns the backlog message parameter. 135 135 * @param[in] call The message call structure. 136 136 */ 137 #define SOCKET_GET_BACKLOG(call) (int) IPC_GET_ARG2(call)137 #define SOCKET_GET_BACKLOG(call) (int) IPC_GET_ARG2(call) 138 138 139 139 /** Returns the option level message parameter. 140 140 * @param[in] call The message call structure. 141 141 */ 142 #define SOCKET_GET_OPT_LEVEL(call) (int) IPC_GET_ARG2(call)142 #define SOCKET_GET_OPT_LEVEL(call) (int) IPC_GET_ARG2(call) 143 143 144 144 /** Returns the data fragment size message parameter. … … 150 150 * @param[out] answer The message answer structure. 151 151 */ 152 #define SOCKET_SET_DATA_FRAGMENT_SIZE(answer) &IPC_GET_ARG2(answer)152 #define SOCKET_SET_DATA_FRAGMENT_SIZE(answer) (size_t *) &IPC_GET_ARG2(answer) 153 153 154 154 /** Sets the address length in the message answer. 155 155 * @param[out] answer The message answer structure. 156 156 */ 157 #define SOCKET_SET_ADDRESS_LENGTH(answer) &IPC_GET_ARG3(answer)157 #define SOCKET_SET_ADDRESS_LENGTH(answer) (socklen_t *) &IPC_GET_ARG3(answer) 158 158 159 159 /** Returns the address length message parameter. … … 165 165 * @param[out] answer The message answer structure. 166 166 */ 167 #define SOCKET_SET_HEADER_SIZE(answer) &IPC_GET_ARG3(answer)167 #define SOCKET_SET_HEADER_SIZE(answer) (int *) &IPC_GET_ARG3(answer) 168 168 169 169 /** Returns the header size message parameter. 170 170 * @param[in] call The message call structure. 171 171 */ 172 #define SOCKET_GET_HEADER_SIZE(call) (size_t) IPC_GET_ARG3(call)172 #define SOCKET_GET_HEADER_SIZE(call) (int) IPC_GET_ARG3(call) 173 173 174 174 /** Returns the flags message parameter. 175 175 * @param[in] call The message call structure. 176 176 */ 177 #define SOCKET_GET_FLAGS(call) (int) IPC_GET_ARG4(call)177 #define SOCKET_GET_FLAGS(call) (int) IPC_GET_ARG4(call) 178 178 179 179 /** Returns the option name message parameter. 180 180 * @param[in] call The message call structure. 181 181 */ 182 #define SOCKET_GET_OPT_NAME(call) (int) IPC_GET_ARG4(call)182 #define SOCKET_GET_OPT_NAME(call) (int) IPC_GET_ARG4(call) 183 183 184 184 /** Returns the data fragments message parameter. -
uspace/srv/net/tl/tcp/tcp.c
re2b73d4f rfacebd56 1060 1060 int app_phone = IPC_GET_PHONE(&call); 1061 1061 struct sockaddr * addr; 1062 int socket_id;1063 1062 size_t addrlen; 1064 1063 fibril_rwlock_t lock; … … 1105 1104 socket_data->local_sockets = &local_sockets; 1106 1105 fibril_rwlock_write_lock(&lock); 1107 socket_id = SOCKET_GET_SOCKET_ID(call); 1108 res = socket_create(&local_sockets, app_phone, socket_data, &socket_id); 1109 *SOCKET_SET_SOCKET_ID(answer) = socket_id; 1106 *SOCKET_SET_SOCKET_ID(answer) = SOCKET_GET_SOCKET_ID(call); 1107 res = socket_create(&local_sockets, app_phone, socket_data, SOCKET_SET_SOCKET_ID(answer)); 1110 1108 fibril_rwlock_write_unlock(&lock); 1111 1109 if(res == EOK){ -
uspace/srv/net/tl/udp/udp.c
re2b73d4f rfacebd56 417 417 int app_phone = IPC_GET_PHONE(&call); 418 418 struct sockaddr * addr; 419 int socket_id;420 419 size_t addrlen; 421 420 ipc_call_t answer; … … 452 451 break; 453 452 case NET_SOCKET: 454 socket_id = SOCKET_GET_SOCKET_ID(call); 455 res = socket_create(&local_sockets, app_phone, NULL, &socket_id); 456 *SOCKET_SET_SOCKET_ID(answer) = socket_id; 457 453 *SOCKET_SET_SOCKET_ID(answer) = SOCKET_GET_SOCKET_ID(call); 454 res = socket_create(&local_sockets, app_phone, NULL, SOCKET_SET_SOCKET_ID(answer)); 458 455 if(res == EOK){ 459 456 if(tl_get_ip_packet_dimension(udp_globals.ip_phone, &udp_globals.dimensions, DEVICE_INVALID_ID, &packet_dimension) == EOK){
Note:
See TracChangeset
for help on using the changeset viewer.