Changeset 32b4302 in mainline for meson


Ignore:
Timestamp:
2019-08-18T19:06:02Z (6 years ago)
Author:
GitHub <noreply@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
1c39d33b
Parents:
fa70134 (diff), 6c2fac18 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Jiří Zárevúcky <zarevucky.jiri@…> (2019-08-18 19:06:02)
git-committer:
GitHub <noreply@…> (2019-08-18 19:06:02)
Message:

Merge pull request #174 from le-jzr/meson3

Convert HelenOS build system to Meson

Location:
meson
Files:
22 added
10 moved

Legend:

Unmodified
Added
Removed
  • meson/arch/abs32le/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2016 Jiri Svoboda
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 USPACE_PREFIX = ../..
    30 EXTRA_CFLAGS = -I$(LIBDLTEST_PREFIX)
    31 BINARY = dltests
     29arch_kernel_c_args = [ '-D__LE__' ]
     30arch_uspace_c_args = [ '-D__LE__' ]
    3231
    33 SOURCES = \
    34         dltests.c
     32if CROSS_TARGET == 'arm32'
     33        atsign = '%'
     34elif CROSS_TARGET == 'mips32'
     35        arch_kernel_c_args += [ '-mno-abicalls' ]
     36endif
    3537
    36 include $(USPACE_PREFIX)/Makefile.common
    37 
    38 ifeq ($(STATIC_BUILD), y)
    39         EXTRA_CFLAGS += -DSTATIC_EXE
    40 endif
     38arch_kernel_link_args = [ '-nostdlib' ]
     39arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
  • meson/arch/arm32/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2006 Martin Decky
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 BFD_NAME = elf64-ia64-little
    30 BFD_OUTPUT = $(BFD_NAME)
     29atsign = '%'
    3130
    32 BITS = 64
    33 ENDIANESS = LE
    34 EXTRA_CFLAGS = -fno-unwind-tables -mfixed-range=f32-f127 -mno-pic -mno-sdata
     31_cpudef = '-mcpu=' + '-'.join(PROCESSOR.split('_'))
    3532
    36 RD_SRVS_NON_ESSENTIAL +=
    3733
    38 RD_SRVS_ESSENTIAL +=
     34arch_uspace_c_args = [
     35        _cpudef,
     36        '-D__LE__',
     37        '-fno-omit-frame-pointer',
     38        '-mapcs-frame',
     39        '-ffixed-r9',
     40        '-mtp=soft',
     41]
    3942
    40 SOURCES = \
    41         arch/$(BARCH)/src/boot.S \
    42         arch/$(BARCH)/src/asm.S \
    43         arch/$(BARCH)/src/main.c \
    44         arch/$(BARCH)/src/sal.c \
    45         arch/$(BARCH)/src/sal_asm.S \
    46         arch/$(BARCH)/src/pal.c \
    47         arch/$(BARCH)/src/pal_asm.S \
    48         arch/$(BARCH)/src/putchar.c \
    49         $(COMPS).o \
    50         genarch/src/efi.c \
    51         genarch/src/division.c \
    52         generic/src/balloc.c \
    53         generic/src/memstr.c \
    54         generic/src/printf_core.c \
    55         generic/src/vprintf.c \
    56         generic/src/printf.c \
    57         generic/src/str.c \
    58         generic/src/version.c \
    59         generic/src/inflate.c \
    60         generic/src/tar.c \
    61         generic/src/gzip.c \
    62         generic/src/kernel.c \
    63         generic/src/payload.c
    64 
    65 ifeq ($(MACHINE),ski)
    66 SOURCES += \
    67         arch/$(BARCH)/src/ski.c
     43if CONFIG_FPU
     44        # This is necessary for kernel too, to allow vmsr insn and fpexc manipulation.
     45        # Use vfp32 to allow context save/restore of d16-d31 regs.
     46        arch_uspace_c_args += [ '-mfloat-abi=hard' ]
    6847endif
    6948
    70 ifeq ($(MACHINE),i460GX)
    71 RD_DRVS_ESSENTIAL += \
    72         platform/pc \
    73         bus/pci/pciintel \
    74         bus/isa \
    75         char/i8042 \
    76         hid/xtkbd
     49arch_kernel_c_args = arch_uspace_c_args + [ '-mno-unaligned-access', '-mfpu=vfpv3' ]
     50arch_kernel_link_args = [ '-nostdlib', '-Wl,-z,max-page-size=0x1000' ]
     51arch_uspace_link_args = [ '-nostdlib', '-lgcc', '-Wl,-z,max-page-size=0x1000' ]
    7752
    78 RD_DRVS_NON_ESSENTIAL += \
    79         char/ns8250 \
    80         time/cmos-rtc \
    81         bus/usb/ehci\
    82         bus/usb/ohci \
    83         bus/usb/uhci \
    84         bus/usb/usbdiag \
    85         bus/usb/usbflbk \
    86         bus/usb/usbhub \
    87         bus/usb/usbmid \
    88         bus/usb/vhc \
    89         block/usbmast \
    90         hid/usbhid
     53arch_boot_c_args = arch_kernel_c_args
     54arch_boot_link_args = arch_kernel_link_args
    9155
    92 RD_DRV_CFG += \
    93         bus/isa
     56
     57rd_essential += [
     58        'drv/bus/usb/ehci',
     59        'drv/bus/usb/ohci',
     60        'drv/bus/usb/usbdiag',
     61        'drv/bus/usb/usbflbk',
     62        'drv/bus/usb/usbhub',
     63        'drv/bus/usb/usbmid',
     64        'drv/block/usbmast',
     65        'drv/hid/usbhid',
     66]
     67
     68if MACHINE == 'gta02'
     69        rd_essential += [
     70                'srv/hid/s3c24xx_ts',
     71                'srv/hw/char/s3c24xx_uart',
     72        ]
     73
     74elif MACHINE == 'beagleboardxm' or MACHINE == 'beaglebone'
     75        rd_essential += [
     76                'drv/platform/amdm37x',
     77                'drv/fb/amdm37x_dispc',
     78        ]
     79
     80elif MACHINE == 'integratorcp'
     81        rd_essential += [
     82                'drv/char/pl050',
     83                'drv/hid/atkbd',
     84                'drv/hid/ps2mouse',
     85                'drv/intctl/icp-ic',
     86                'drv/platform/icp',
     87        ]
    9488endif
    95 
    96 ifeq ($(MACHINE),ski)
    97 RD_DRVS_ESSENTIAL += \
    98         char/ski-con \
    99         platform/ski
    100 endif
  • meson/arch/arm64/meson.build

    rfa70134 r32b4302  
    2727#
    2828
    29 BOOT_OUTPUT = image.boot
    30 POST_OUTPUT = $(ROOT_PATH)/image.iso
    31 POSTBUILD = Makefile.grub
    32 GRUB_LOADER = chainloader
     29arch_uspace_c_args = [ '-D__LE__', '-fno-omit-frame-pointer' ]
     30arch_kernel_c_args = arch_uspace_c_args + [ '-march=armv8-a+nofp+nosimd', '-mgeneral-regs-only' ]
     31arch_kernel_link_args = [ '-nostdlib' ]
     32arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
    3333
    34 BFD_NAME = elf64-littleaarch64
    35 # Request binary BFD output. The ARM64 port manually prepares the .text
    36 # section to look as a PE file than can be loaded on EFI systems.
    37 BFD_OUTPUT = binary
    38 
    39 BITS = 64
    40 ENDIANESS = LE
    4134
    4235# UEFI binaries should be relocatable, the EFI boot service LoadImage() will
     
    5043# processor is in the execution mode that has unaligned access enabled. The
    5144# -mstrict-align option is therefore not needed.
    52 EXTRA_CFLAGS = -fpic -fvisibility=hidden
    53 EXTRA_LDFLAGS = -Wl,-shared
     45arch_boot_c_args = arch_uspace_c_args + [ '-fpic', '-fvisibility=hidden', '-fno-function-sections' ]
     46arch_boot_link_args = [ '-Wl,-shared', '-Wl,--no-gc-sections' ]
    5447
    55 ifeq ($(MACHINE), virt)
    56         RD_DRVS_ESSENTIAL += \
    57                 char/pl011 \
    58                 intctl/gicv2 \
    59                 platform/arm64virt
     48
     49if MACHINE == 'virt'
     50        rd_essential += [
     51                'drv/char/pl011',
     52                'drv/intctl/gicv2',
     53                'drv/platform/arm64virt',
     54        ]
    6055endif
    61 
    62 SOURCES = \
    63         arch/$(BARCH)/src/asm.S \
    64         arch/$(BARCH)/src/main.c \
    65         arch/$(BARCH)/src/relocate.c \
    66         $(COMPS).o \
    67         genarch/src/efi.c \
    68         generic/src/gzip.c \
    69         generic/src/inflate.c \
    70         generic/src/kernel.c \
    71         generic/src/memstr.c \
    72         generic/src/payload.c \
    73         generic/src/printf.c \
    74         generic/src/printf_core.c \
    75         generic/src/str.c \
    76         generic/src/tar.c \
    77         generic/src/version.c \
    78         generic/src/vprintf.c
  • meson/arch/mips32/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2005 Martin Decky
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 
    30 COMMON_CFLAGS += -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127
    31 
    32 LDFLAGS += -Wl,-EL
    33 
    34 BITS = 64
    35 ENDIANESS = LE
    36 
    37 ARCH_SOURCES = \
    38         arch/$(KARCH)/src/start.S \
    39         arch/$(KARCH)/src/asm.S \
    40         arch/$(KARCH)/src/dummy.S \
    41         arch/$(KARCH)/src/ia64.c \
    42         arch/$(KARCH)/src/fpu_context.c \
    43         arch/$(KARCH)/src/context.S \
    44         arch/$(KARCH)/src/cpu/cpu.c \
    45         arch/$(KARCH)/src/debug/stacktrace.c \
    46         arch/$(KARCH)/src/debug/stacktrace_asm.S \
    47         arch/$(KARCH)/src/ivt.S \
    48         arch/$(KARCH)/src/interrupt.c \
    49         arch/$(KARCH)/src/mm/km.c \
    50         arch/$(KARCH)/src/mm/as.c \
    51         arch/$(KARCH)/src/mm/frame.c \
    52         arch/$(KARCH)/src/mm/page.c \
    53         arch/$(KARCH)/src/mm/tlb.c \
    54         arch/$(KARCH)/src/mm/vhpt.c \
    55         arch/$(KARCH)/src/proc/scheduler.c \
    56         arch/$(KARCH)/src/ddi/ddi.c \
    57         arch/$(KARCH)/src/smc.c \
    58         arch/$(KARCH)/src/smp/smp.c \
    59         arch/$(KARCH)/src/drivers/it.c
    60 
    61 ifeq ($(MACHINE),ski)
    62         ARCH_SOURCES += arch/$(KARCH)/src/drivers/ski.c
     29if MACHINE == 'msim'
     30        _march = '-march=r4000'
     31        _endian = '-D__LE__'
     32elif MACHINE == 'lmalta'
     33        _march = '-march=4kc'
     34        _endian = '-D__LE__'
     35elif MACHINE == 'bmalta'
     36        _march = '-march=4kc'
     37        _endian = '-D__BE__'
     38else
     39        error('Unknown machine')
    6340endif
    6441
    65 ifeq ($(MACHINE),i460GX)
    66         DEFS += -DI460GX
     42arch_uspace_c_args = [
     43        _march,
     44        _endian,
     45        '-fno-omit-frame-pointer',
     46        '-msoft-float',
     47        '-mabi=32',
     48]
     49
     50arch_kernel_c_args = arch_uspace_c_args + [
     51        '-mno-abicalls',
     52        '-G', '0',
     53        '-fno-zero-initialized-in-bss',
     54]
     55
     56arch_boot_c_args = arch_kernel_c_args
     57
     58arch_kernel_link_args = [ '-nostdlib' ]
     59arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
     60arch_boot_link_args = []
     61
     62
     63kernel_as_prolog = '.module softfloat;'
     64uspace_as_prolog = '.module softfloat;.abicalls;'
     65
     66
     67if MACHINE == 'bmalta' or MACHINE == 'lmalta'
     68        rd_essential += [
     69                'drv/platform/malta',
     70                'drv/intctl/i8259',
     71                'drv/block/ata_bd',
     72                'drv/bus/pci/pciintel',
     73                'drv/bus/isa',
     74                'drv/char/i8042',
     75                'drv/char/ns8250',
     76                'drv/hid/ps2mouse',
     77                'drv/hid/xtkbd',
     78        ]
     79
     80elif MACHINE == 'msim'
     81        rd_essential += [
     82                'drv/platform/msim',
     83                'drv/block/ddisk',
     84                'drv/char/msim-con',
     85        ]
     86
    6787endif
    68 
    69 ARCH_AUTOCHECK_HEADERS = \
    70         arch/$(KARCH)/include/arch/istate_struct.h \
    71         arch/$(KARCH)/include/arch/context_struct.h
    72 
  • meson/arch/ppc32/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2006 Martin Decky
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 RD_SRVS_ESSENTIAL += \
    30         audio/hound \
    31         devman
     29# FIXME: enable --gc-sections
    3230
    33 RD_DRVS_ESSENTIAL += \
    34         intctl/apic \
    35         intctl/i8259 \
    36         platform/pc \
    37         block/ata_bd \
    38         bus/pci/pciintel \
    39         bus/isa \
    40         audio/sb16 \
    41         char/i8042 \
    42         hid/ps2mouse \
    43         hid/xtkbd
     31_common_c_args = [ '-D__BE__', '-fno-omit-frame-pointer', '-m32', '-Wa,-a32', '-mcpu=powerpc' ]
    4432
    45 RD_DRVS_NON_ESSENTIAL += \
    46         audio/hdaudio \
    47         char/ns8250 \
    48         char/pc-lpt \
    49         time/cmos-rtc \
    50         bus/usb/ehci\
    51         bus/usb/ohci \
    52         bus/usb/uhci \
    53         bus/usb/usbdiag \
    54         bus/usb/usbflbk \
    55         bus/usb/usbhub \
    56         bus/usb/usbmid \
    57         bus/usb/vhc \
    58         bus/usb/xhci \
    59         block/usbmast \
    60         hid/usbhid
     33arch_kernel_c_args = _common_c_args + [ '-msoft-float', '-fno-function-sections' ]
     34arch_uspace_c_args = _common_c_args + [ CONFIG_FPU ? '-mhard-float' : '-msoft-float' ]
     35arch_boot_c_args = arch_kernel_c_args
     36arch_kernel_link_args = [ '-nostdlib', '-Wl,-z,max-page-size=0x1000', '-Wl,--no-check-sections', '-Wl,--no-gc-sections' ]
     37arch_uspace_link_args = [ '-nostdlib', '-lgcc', '-Wl,-z,max-page-size=0x1000' ]
     38arch_boot_link_args = []
    6139
    62 RD_DRV_CFG += \
    63         bus/isa
    6440
    65 RD_APPS_ESSENTIAL += \
    66         edit \
    67         mixerctl \
    68         wavplay
    69 
    70 RD_DATA_NON_ESSENTIAL += \
    71         $(USPACE_PATH)/app/wavplay/demo.wav
    72 
    73 POST_OUTPUT = $(ROOT_PATH)/image.iso
    74 BUILD = Makefile.empty
    75 POSTBUILD = Makefile.grub
    76 GRUB_LOADER = multiboot
     41rd_essential += [
     42        'drv/platform/mac',
     43        'drv/bus/adb/cuda_adb',
     44        'drv/bus/pci/pciintel',
     45        'drv/bus/usb/ohci',
     46        'drv/bus/usb/usbdiag',
     47        'drv/bus/usb/usbflbk',
     48        'drv/bus/usb/usbhub',
     49        'drv/bus/usb/usbmid',
     50        'drv/bus/usb/vhc',
     51        'drv/block/usbmast',
     52        'drv/hid/adb-kbd',
     53        'drv/hid/adb-mouse',
     54        'drv/hid/usbhid',
     55]
  • meson/arch/riscv64/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2017 Jiri Svoboda
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 cfg_file = doxygen.cfg
    30 gen_cfg = doxygen.cfg.gen
    31 patch_file = doxygen.cfg.diff
    32 output_dirs = latex html
     29arch_uspace_c_args = [ '-D__LE__', '-fno-omit-frame-pointer' ]
     30arch_kernel_c_args = arch_uspace_c_args + [ '-mcmodel=medany' ]
     31arch_boot_c_args = arch_kernel_c_args
     32arch_kernel_link_args = [ '-nostdlib' ]
     33arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
     34arch_boot_link_args = []
    3335
    34 all: doxygen.cfg
    35         doxygen $^
    36 
    37 clean:
    38         rm -f $(gen_cfg) $(cfg_file)
    39         rm -rf $(output_dirs)
    40 
    41 $(cfg_file): $(gen_cfg)
    42         cp $^ $@
    43         patch $@ $(patch_file)
    44 
    45 $(gen_cfg):
    46         doxygen -g $@
     36rd_essential += [
     37]
  • meson/arch/sparc64/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2006 Martin Decky
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 BITS = 32
    30 EXTRA_CFLAGS = -msoft-float -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mabi=32
    31 AS_PROLOG = .module softfloat;
     29arch_uspace_c_args = [ '-D__BE__', '-m64', '-mcmodel=medlow', '-mhard-float', '-m' + QUADFLOAT + '-quad-float' ]
    3230
    33 ifeq ($(MACHINE),msim)
    34         BFD_NAME = elf32-tradlittlemips
    35         BFD_OUTPUT = binary
    36         ENDIANESS = LE
    37         EXTRA_CFLAGS += -march=r4000
    38 endif
    39 ifeq ($(MACHINE),lmalta)
    40         BFD_NAME = elf32-tradlittlemips
    41         BFD_OUTPUT = elf32-tradlittlemips
    42         ENDIANESS = LE
    43         EXTRA_CFLAGS += -march=4kc
    44 endif
    45 ifeq ($(MACHINE),bmalta)
    46         BFD_NAME = elf32-tradbigmips
    47         BFD_OUTPUT = elf32-tradbigmips
    48         ENDIANESS = BE
    49         EXTRA_CFLAGS += -march=4kc
     31if PROCESSOR == 'sun4v'
     32        arch_uspace_c_args += [ '-mcpu=niagara', '-mno-vis' ]
     33else
     34        arch_uspace_c_args += [ '-mcpu=ultrasparc' ]
    5035endif
    5136
    52 ifeq ($(MACHINE), $(filter $(MACHINE),bmalta lmalta))
    53         RD_DRVS_ESSENTIAL += \
    54                 platform/malta \
    55                 intctl/i8259 \
    56                 block/ata_bd \
    57                 bus/pci/pciintel \
    58                 bus/isa \
    59                 char/i8042 \
    60                 char/ns8250 \
    61                 hid/ps2mouse \
    62                 hid/xtkbd
    63 
    64         RD_DRV_CFG += \
    65                 bus/isa
     37if PROCESSOR == 'us' or PROCESSOR == 'us3'
     38        arch_uspace_c_args += [ '-DSUN4U' ]
     39elif PROCESSOR == 'sun4v'
     40        arch_uspace_c_args += [ '-DSUN4V' ]
     41else
     42        error('Unknown PROCESSOR: ' + PROCESSOR)
    6643endif
    6744
    68 ifeq ($(MACHINE),msim)
    69         RD_DRVS_ESSENTIAL += \
    70                 platform/msim \
    71                 block/ddisk \
    72                 char/msim-con
     45
     46arch_kernel_c_args = [ '-D__BE__', '-m64', '-mcmodel=medlow', '-mcpu=ultrasparc', '-mno-fpu' ]
     47arch_boot_c_args = arch_kernel_c_args
     48
     49if PROCESSOR == 'us'
     50        arch_kernel_c_args += [
     51                '-DUS',
     52                '-DSUN4U',
     53        ]
     54elif PROCESSOR == 'us3'
     55        arch_kernel_c_args += [
     56                '-DUS3',
     57                '-DSUN4U',
     58        ]
     59elif PROCESSOR == 'sun4v'
     60        arch_kernel_c_args += [
     61                '-DSUN4V',
     62                #MH
     63                '-DUS',
     64        ]
    7365endif
    7466
    75 SOURCES = \
    76         arch/$(BARCH)/src/asm.S \
    77         arch/$(BARCH)/src/main.c \
    78         arch/$(BARCH)/src/putchar.c \
    79         $(COMPS).o \
    80         genarch/src/division.c \
    81         genarch/src/multiplication.c \
    82         generic/src/memstr.c \
    83         generic/src/printf_core.c \
    84         generic/src/vprintf.c \
    85         generic/src/printf.c \
    86         generic/src/str.c \
    87         generic/src/version.c \
    88         generic/src/inflate.c \
    89         generic/src/gzip.c \
    90         generic/src/tar.c \
    91         generic/src/kernel.c \
    92         generic/src/payload.c
     67arch_boot_link_args = []
     68arch_kernel_link_args = [ '-nostdlib', '-Wl,-no-check-sections' ]
     69arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
     70
     71if PROCESSOR == 'sun4v'
     72        arch_uspace_link_args += [ '-Wl,-z,max-page-size=0x2000' ]
     73else
     74        arch_uspace_link_args += [ '-Wl,-z,max-page-size=0x4000' ]
     75endif
     76
     77
     78if PROCESSOR == 'sun4v'
     79        rd_essential += [
     80                'drv/platform/sun4v',
     81                'drv/char/sun4v-con',
     82        ]
     83else
     84        rd_essential += [
     85                'drv/platform/sun4u',
     86                'drv/bus/pci/pciintel',
     87                'drv/bus/isa',
     88                'drv/intctl/obio',
     89                'drv/char/ns8250',
     90        ]
     91endif
  • meson/part/extra_targets/meson.build

    rfa70134 r32b4302  
    11#
    22# Copyright (c) 2017 Jiri Svoboda
     3# Copyright (c) 2019 Jiří Zárevúcky
    34# All rights reserved.
    45#
     
    2728#
    2829
    29 USPACE_PREFIX = ../..
    30 BINARY = gunzip
     30run_target('config',
     31        command: [
     32                sh,
     33                '-c', 'cd $1 && $2 $3 $4 $5',
     34                '--',
     35                meson.build_root(),
     36                config_py.path(),
     37                meson.source_root() / 'HelenOS.config',
     38                meson.source_root() / 'defaults',
     39                '--mask-platform',
     40        ]
     41)
    3142
    32 LIBS = compress
     43# TODO: Check when cross target has changed, since it won't work.
    3344
    34 SOURCES = \
    35         gunzip.c
     45if false
     46        # TODO: doesn't work because it changes cross target
     47        run_target('random-config',
     48                command: [
     49                        sh,
     50                        '-c', 'cd $1 && $2 $3 $4 random',
     51                        '--',
     52                        meson.build_root(),
     53                        config_py.path(),
     54                        meson.source_root() / 'HelenOS.config',
     55                        meson.source_root() / 'defaults',
     56                ]
     57        )
     58endif
    3659
    37 include $(USPACE_PREFIX)/Makefile.common
     60if doxygen.found()
     61        _patch_file = files('doxygen.cfg.diff')
     62
     63        _gen_cfg = custom_target('doxygen.cfg.gen',
     64                output: 'doxygen.cfg.gen',
     65                command: [ doxygen, '-g', '@OUTPUT@' ],
     66        )
     67
     68        _dox_cfg = custom_target('doxygen.cfg',
     69                output: 'doxygen.cfg',
     70                input: [ _gen_cfg, _patch_file ],
     71                command: [ patch, '-o', '@OUTPUT@', '@INPUT@' ],
     72        )
     73
     74        run_target('doxygen', command: [ doxygen, _dox_cfg ])
     75endif
     76
     77# TODO text-xcw
     78#ifeq ($(CONFIG_DEVEL_FILES),y)
     79#       export PATH=$$PATH:$(abspath tools/xcw/bin) && $(MAKE) -r -C tools/xcw/demo
     80#endif
     81
     82# TODO special target for posix and xcw exports, update coastline for it
  • meson/part/initrd_manifest/meson.build

    rfa70134 r32b4302  
    11#
    2 # Copyright (c) 2005 Martin Decky
     2# Copyright (c) 2019 Jiří Zárevúcky
    33# All rights reserved.
    44#
     
    2727#
    2828
    29 ifeq ($(PROCESSOR),i486)
    30         COMMON_CFLAGS += -march=i486
    31 else
    32         COMMON_CFLAGS += -march=pentium
     29# Init binaries. These are actually baked into the bootloader.
     30rd_init = [
     31        # IMPORTANT: The order of entries is important for bootloader!
     32        'srv/ns',
     33        'srv/loader',
     34        'app/init',
     35        'srv/locsrv',
     36        'srv/bd/rd',
     37        'srv/vfs',
     38        'srv/logger',
     39        'srv/fs/' + RDFMT,
     40]
     41
     42# Binaries allowed on the initrd image when CONFIG_BAREBONE is enabled.
     43rd_essential = [
     44        'app/bdsh',
     45        'app/getterm',
     46        'app/kio',
     47
     48        'srv/devman',
     49        'srv/fs/locfs',
     50        'srv/hid/console',
     51        'srv/hid/input',
     52        'srv/hid/output',
     53        'srv/klog',
     54
     55        'drv/root/root',
     56        'drv/root/virt',
     57        'drv/fb/kfb',
     58]
     59
     60if CONFIG_FB
     61        rd_essential += [
     62                'app/vlaunch',
     63                'app/vterm',
     64
     65                'srv/hid/compositor',
     66        ]
    3367endif
    34 
    35 # XXX: This architecture requires unoptimized TLS pointer access,
    36 #      as with the GCC option `-mno-tls-direct-seg-refs`.
    37 #      The `i686-helenos` target defaults to this behavior.
    38 
    39 COMMON_CFLAGS += -mno-tls-direct-seg-refs -fno-omit-frame-pointer
    40 LDFLAGS += -Wl,--gc-sections
    41 
    42 ENDIANESS = LE
    43 
Note: See TracChangeset for help on using the changeset viewer.