Changeset 28fcaee in mainline
- Timestamp:
- 2019-08-17T12:49:43Z (5 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 643640a
- Parents:
- fd6c8b1
- git-author:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-06-28 13:28:59)
- git-committer:
- Jiří Zárevúcky <zarevucky.jiri@…> (2019-08-17 12:49:43)
- Files:
-
- 5 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
boot/Makefile
rfd6c8b1 r28fcaee 31 31 include Makefile.common 32 32 33 all: $(VERSION_DEF) $(COMMON_MAKEFILE) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) $(PREBUILD)33 all: $(VERSION_DEF) $(COMMON_MAKEFILE) $(CONFIG_MAKEFILE) $(CONFIG_HEADER) 34 34 $(MAKE) -r -f $(BUILD) PRECHECK=$(PRECHECK) 35 35 ifneq ($(POSTBUILD),) -
boot/Makefile.grub
rfd6c8b1 r28fcaee 27 27 # 28 28 29 .PHONY: all build_dist clean 29 .PHONY: all 30 all: 30 31 31 include Makefile.common32 33 GRUB = grub/$(BARCH)-$(GRUB_ARCH)34 BOOT = $(DISTROOT)/boot35 BOOT_CONFIG = $(BOOT)/grub/grub.cfg36 37 ELTORITO = boot/grub/$(GRUB_ARCH).img38 IMAGE = $(DISTROOT)/$(ELTORITO)39 40 ifeq ($(GRUB_ARCH),pc)41 MULTIBOOT_CMD = multiboot42 MODULE_CMD = module43 endif44 ifeq ($(GRUB_ARCH),efi)45 MULTIBOOT_CMD = multiboot246 MODULE_CMD = module247 endif48 49 all: $(POST_OUTPUT)50 51 $(POST_OUTPUT): build_dist52 ifeq ($(GRUB_ARCH),pc)53 $(GENISOIMAGE) -J -r -input-charset utf-8 -V "HelenOS-CD" -eltorito-boot $(ELTORITO) -no-emul-boot -boot-info-table -o $@ $(DISTROOT)/54 endif55 ifeq ($(GRUB_ARCH),efi)56 $(GENISOIMAGE) -J -r -input-charset utf-8 -V "HelenOS-CD" --efi-boot $(ELTORITO) -o $@ $(DISTROOT)/57 endif58 59 build_dist: clean $(COMPONENTS)60 mkdir -p $(BOOT)61 cp -r -L $(GRUB) $(BOOT)/grub62 ifeq ($(GRUB_ARCH),efi)63 gunzip $(IMAGE)64 endif65 66 ifeq ($(GRUB_LOADER),multiboot)67 for module in $(COMPONENTS) ; do \68 cp "$$module" $(BOOT)/ ; \69 done70 endif71 ifeq ($(GRUB_LOADER),chainloader)72 cp "$(BOOT_OUTPUT)" $(BOOT)/73 endif74 75 echo "set default=0" > $(BOOT_CONFIG)76 echo "set timeout=10" >> $(BOOT_CONFIG)77 echo "" >> $(BOOT_CONFIG)78 79 ifeq ($(GRUB_ARCH),pc)80 echo "insmod vbe" >> $(BOOT_CONFIG)81 echo "insmod vga" >> $(BOOT_CONFIG)82 endif83 ifeq ($(GRUB_ARCH),efi)84 echo "insmod efi_gop" >> $(BOOT_CONFIG)85 echo "insmod efi_uga" >> $(BOOT_CONFIG)86 endif87 echo "" >> $(BOOT_CONFIG)88 89 echo "menuentry 'HelenOS $(RELEASE)' --class helenos --class os {" >> $(BOOT_CONFIG)90 ifeq ($(GRUB_LOADER),multiboot)91 for module in $(MODULES) ; do \92 echo " echo 'Loading $$module'" >> $(BOOT_CONFIG) ; \93 if [ "$$module" = "kernel.elf" ] ; then \94 echo " $(MULTIBOOT_CMD) /boot/$$module" >> $(BOOT_CONFIG) ; \95 else \96 echo " $(MODULE_CMD) /boot/$$module /boot/$$module" >> $(BOOT_CONFIG) ; \97 fi \98 done99 endif100 ifeq ($(GRUB_LOADER),chainloader)101 echo " echo 'Loading $(BOOT_OUTPUT)'" >> $(BOOT_CONFIG)102 echo " chainloader /boot/$(BOOT_OUTPUT)" >> $(BOOT_CONFIG)103 echo " boot" >> $(BOOT_CONFIG)104 endif105 echo "}" >> $(BOOT_CONFIG)106 107 clean:108 rm -fr $(DISTROOT)109 110 include Makefile.initrd -
boot/arch/abs32le/Makefile.inc
rfd6c8b1 r28fcaee 31 31 JOB = 32 32 MAP = 33 PREBUILD =34 33 BUILD = Makefile.empty -
boot/arch/amd64/Makefile.inc
rfd6c8b1 r28fcaee 27 27 # 28 28 29 RD_DRV_CFG += \30 bus/isa31 32 29 POST_OUTPUT = $(ROOT_PATH)/image.iso 33 30 BUILD = Makefile.empty -
kernel/meson.build
rfd6c8b1 r28fcaee 166 166 endforeach 167 167 168 rd_init_binaries += [[ kernel_elf, 'boot/kernel.elf' ]] 169 168 170 install_files += [[ 'boot', kernel_elf.full_path(), 'kernel.elf' ]] 169 171 install_deps += [ kernel_elf ] -
meson.build
rfd6c8b1 r28fcaee 22 22 unzip = find_program('unzip') 23 23 which = find_program('which') 24 sh = find_program('sh')24 sh = [ find_program('sh'), '-x', '-u', '-e' ] 25 25 mkext4 = find_program('tools/mkext4.py') 26 26 mkfat = find_program('tools/mkfat.py') 27 cp = find_program('cp') 28 29 genisoimage = find_program('genisoimage', required: false) 30 31 if not genisoimage.found() 32 genisoimage = find_program('mkisofs', required: false) 33 endif 34 35 if not genisoimage.found() 36 xorriso = find_program('xorriso', required: false) 37 38 if xorriso.found() 39 genisoimage = [ xorriso, '-as', 'genisoimage' ] 40 else 41 error('Need genisoimage, mkisofs or xorriso.') 42 endif 43 endif 44 27 45 28 46 autocheck = generator(find_program('tools/autocheck.awk'), … … 136 154 'UARCH', 137 155 'KARCH', 156 'BARCH', 157 'GRUB_ARCH', 138 158 ] 139 159 … … 275 295 # Init binaries. 276 296 rd_init = [ 297 # IMPORTANT: The order of entries is important for bootloader! 298 'srv/ns', 299 'srv/loader', 277 300 'app/init', 301 'srv/locsrv', 278 302 'srv/bd/rd', 303 'srv/vfs', 304 'srv/logger', 279 305 'srv/fs/' + RDFMT, 280 'srv/loader', 281 'srv/locsrv', 282 'srv/logger', 283 'srv/ns', 284 'srv/vfs', 285 ] 306 ] 307 308 # References to the actual binary files. Filled in by uspace. 309 rd_init_binaries = [] 286 310 287 311 # Binaries allowed on the initrd image when CONFIG_BAREBONE is enabled. … … 451 475 output: 'dist.tag', 452 476 input: [ install_script, install_deps ], 453 command: [ sh, '-x', '-u', '-e', '@INPUT0@', '@OUTPUT@', dist_dir ], 454 build_by_default: true, 477 command: [ sh, '@INPUT0@', '@OUTPUT@', dist_dir ], 455 478 ) 456 479 … … 471 494 input: dist, 472 495 command: initrd_cmd, 496 ) 497 498 rd_init_binaries += [[ initrd_img, 'boot/initrd.img' ]] 499 500 subdir('boot') 501 502 custom_target(POST_OUTPUT, 503 output: POST_OUTPUT, 504 input: POST_INPUT, 505 command: [ cp, '@INPUT@', '@OUTPUT@' ], 473 506 build_by_default: true, 474 507 ) 475 -
tools/ew.py
rfd6c8b1 r28fcaee 270 270 271 271 if cfg['image'] == 'image.iso': 272 cmdline += ' -boot d -cdrom image.iso'272 cmdline += ' -boot d -cdrom build/image.iso' 273 273 elif cfg['image'] == 'image.iso@arm64': 274 274 # Define image.iso cdrom backend. -
uspace/meson.build
rfd6c8b1 r28fcaee 127 127 'c_args': c_args, 128 128 'link_args': link_args + (static_build ? [ '-static' ] : []), 129 'init': rd_init.contains(dir), 129 130 } 130 131 endif … … 143 144 'c_args': c_args, 144 145 'link_args': link_args, 146 'init': false, 145 147 } 146 148 endif … … 157 159 _build_name = _full_install_path.underscorify() 158 160 _full_build_name = meson.current_build_dir() / _build_name 161 _is_init = tst.get('init') 159 162 160 163 if link_map … … 174 177 ) 175 178 179 if _is_init 180 rd_init_binaries += [[ _bin, _full_install_path ]] 181 endif 182 176 183 if disassemble 177 184 _disasm = custom_target(_build_name + '.disasm',
Note:
See TracChangeset
for help on using the changeset viewer.