Changeset 16 for trunk/Makefile


Ignore:
Timestamp:
May 10, 2017, 5:04:01 PM (8 years ago)
Author:
alain
Message:

mprove the HAL for interrupt, exception, syscall handling.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Makefile

    r12 r16  
    8585              build/kernel/kern/dqdt.o            \
    8686              build/kernel/kern/remote_sem.o      \
     87              build/kernel/kern/do_syscall.o      \
     88              build/kernel/kern/do_interrupt.o    \
     89              build/kernel/kern/do_exception.o    \
    8790              build/kernel/kern/rpc.o
    8891
     
    9396              build/kernel/hal/hal_uspace.o       \
    9497              build/kernel/hal/hal_irqmask.o      \
    95               build/kernel/hal/hal_gpt.o       
     98              build/kernel/hal/hal_gpt.o          \
     99              build/kernel/hal/hal_exception.o    \
     100              build/kernel/hal/hal_interrupt.o    \
     101              build/kernel/hal/hal_syscall.o      \
     102              build/kernel/hal/hal_kentry.o
    96103
    97104DEV_OBJS    = build/kernel/devices/dev_txt.o      \
     
    121128              build/kernel/libk/rwlock.o          \
    122129              build/kernel/libk/spinlock.o        \
     130              build/kernel/libk/barrier.o         \
    123131              build/kernel/libk/remote_barrier.o  \
    124132              build/kernel/libk/remote_spinlock.o \
     
    128136              build/kernel/libk/xhtab.o
    129137
    130 SYS_OBJS    = build/kernel/syscalls/sys_exec.o          \
    131               build/kernel/syscalls/sys_thread_create.o
     138SYS_OBJS_0  = build/kernel/syscalls/sys_thread_exit.o     \
     139              build/kernel/syscalls/sys_thread_mmap.o     \
     140              build/kernel/syscalls/sys_thread_create.o   \
     141              build/kernel/syscalls/sys_thread_join.o     \
     142              build/kernel/syscalls/sys_thread_detach.o   \
     143              build/kernel/syscalls/sys_thread_yield.o    \
     144              build/kernel/syscalls/sys_sem.o             \
     145              build/kernel/syscalls/sys_cond_var.o        \
     146              build/kernel/syscalls/sys_barrier.o         \
     147              build/kernel/syscalls/sys_rwlock.o
     148
     149SYS_OBJS_1  = build/kernel/syscalls/sys_thread_sleep.o    \
     150              build/kernel/syscalls/sys_thread_wakup.o    \
     151              build/kernel/syscalls/sys_open.o            \
     152              build/kernel/syscalls/sys_creat.o           \
     153              build/kernel/syscalls/sys_read.o            \
     154              build/kernel/syscalls/sys_write.o           \
     155              build/kernel/syscalls/sys_lseek.o           \
     156              build/kernel/syscalls/sys_close.o           \
     157              build/kernel/syscalls/sys_unlink.o          \
     158              build/kernel/syscalls/sys_pipe.o
     159
     160SYS_OBJS_2  = build/kernel/syscalls/sys_chdir.o           \
     161              build/kernel/syscalls/sys_mkdir.o           \
     162              build/kernel/syscalls/sys_mkfifo.o          \
     163              build/kernel/syscalls/sys_opendir.o         \
     164              build/kernel/syscalls/sys_readdir.o         \
     165              build/kernel/syscalls/sys_closedir.o        \
     166              build/kernel/syscalls/sys_getcwd.o          \
     167              build/kernel/syscalls/sys_clock.o           \
     168              build/kernel/syscalls/sys_alarm.o           \
     169              build/kernel/syscalls/sys_dma_memcpy.o
     170
     171SYS_OBJS_3  = build/kernel/syscalls/sys_utls.o            \
     172              build/kernel/syscalls/sys_notAvailable.o    \
     173              build/kernel/syscalls/sys_signal.o          \
     174              build/kernel/syscalls/sys_sigreturn_setup.o \
     175              build/kernel/syscalls/sys_sigkill.o         \
     176              build/kernel/syscalls/sys_getpid.o          \
     177              build/kernel/syscalls/sys_fork.o            \
     178              build/kernel/syscalls/sys_exec.o            \
     179              build/kernel/syscalls/sys_thread_getattr.o  \
     180              build/kernel/syscalls/sys_ps.o         
     181
     182SYS_OBJS_4  = build/kernel/syscalls/sys_madvise.o         \
     183              build/kernel/syscalls/sys_mcntl.o           \
     184              build/kernel/syscalls/sys_stat.o            \
     185              build/kernel/syscalls/sys_thread_migrate.o  \
     186              build/kernel/syscalls/sys_sbrk.o            \
     187              build/kernel/syscalls/sys_rmdir.o           \
     188              build/kernel/syscalls/sys_ftime.o           \
     189              build/kernel/syscalls/sys_chmod.o           \
     190              build/kernel/syscalls/sys_fsync.o           \
     191              build/kernel/syscalls/sys_gettimeofday.o
     192
     193SYS_OBJS_5  = build/kernel/syscalls/sys_times.o
     194
    132195
    133196VFS_OBJS    = build/kernel/vfs/vfs.o              \
     
    140203                 -Ikernel/kern           \
    141204                 -Ikernel/devices        \
     205                 -Ikernel/syscalls       \
    142206                 -Ikernel/drivers/soclib \
    143207                 -Ikernel/syscalls       \
     
    150214                 -Ikernel/fs/devfs       \
    151215                 -Itools/arch_info       \
     216                 -Ihal/generic           \
    152217                 -Ihal/tsar_mips32       \
    153218                 -I.
     
    184249        @mkdir -p build/kernel/drivers
    185250        @mkdir -p build/kernel/vfs
     251        @mkdir -p build/kernel/syscalls
    186252        @mkdir -p hdd
    187253
     
    333399build/kernel/drivers/%.o:       kernel/drivers/soclib/%.c   \
    334400                                kernel/drivers/soclib/%.h   \
    335                                 almos_config.h              \
     401                                kernel_config.h             \
    336402                                hal/tsar_mips32/hal_types.h
    337403        $(CC) $(KERNEL_INCLUDE) $(CFLAGS)  -c -o $@ $<
     
    342408build/kernel/kern/%.o:              kernel/kern/%.c             \
    343409                                kernel/kern/%.h             \
    344                                 almos_config.h              \
     410                                kernel_config.h             \
    345411                                hal/tsar_mips32/hal_types.h
    346412        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    350416# Rules to generate kernel/hal objects
    351417build/kernel/hal/%.o:           hal/tsar_mips32/%.c         \
    352                                 hal/tsar_mips32/%.h         \
    353                                 almos_config.h              \
     418                                hal/generic/%.h             \
     419                                kernel_config.h             \
     420                                hal/tsar_mips32/hal_types.h
     421        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     422        $(DU) -D $@ > $@.txt
     423
     424build/kernel/hal/hal_kentry.o:  hal/tsar_mips32/hal_kentry.S \
     425                                hal/tsar_mips32/hal_kentry.h \
     426                                kernel_config.h              \
    354427                                hal/tsar_mips32/hal_types.h
    355428        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    360433build/kernel/devices/%.o:       kernel/devices/%.c          \
    361434                                kernel/devices/%.h          \
    362                                 almos_config.h              \
     435                                kernel_config.h             \
    363436                                hal/tsar_mips32/hal_types.h
    364437        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    369442build/kernel/mm/%.o:            kernel/mm/%.c               \
    370443                                kernel/mm/%.h               \
    371                                 almos_config.h              \
     444                                kernel_config.h             \
    372445                                hal/tsar_mips32/hal_types.h
    373446        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    378451build/kernel/libk/%.o:          kernel/libk/%.c             \
    379452                                kernel/libk/%.h             \
    380                                 almos_config.h              \
     453                                kernel_config.h             \
     454                                hal/tsar_mips32/hal_types.h
     455        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     456        $(DU) -D $@ > $@.txt
     457
     458###########################################
     459# Rules to generate kernel/syscalls objects
     460build/kernel/syscalls/%.o:      kernel/syscalls/%.c         \
     461                                kernel/syscalls/syscalls.h  \
     462                                kernel_config.h             \
    381463                                hal/tsar_mips32/hal_types.h
    382464        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    387469build/kernel/vfs/%.o:           kernel/vfs/%.c              \
    388470                                kernel/vfs/vfs.h            \
    389                                 almos_config.h              \
     471                                kernel_config.h             \
    390472                                hal/tsar_mips32/hal_types.h
    391473        $(CC) $(KERNEL_INCLUDE) $(CFLAGS) -c -o $@ $<
     
    404486        $(LD) -o $@ -T kernel/kernel.ld                         \
    405487          $(KERN_OBJS) $(HAL_OBJS) $(DEV_OBJS) $(MM_OBJS)   \
    406           $(LIBK_OBJS) $(DRIVERS_OBJS) $(VFS_OBJS)
     488          $(LIBK_OBJS) $(DRIVERS_OBJS) $(VFS_OBJS)          \
     489          $(SYS_OBJS_0) $(SYS_OBJS_1) $(SYS_OBJS_2)         \
     490          $(SYS_OBJS_3) $(SYS_OBJS_4) $(SYS_OBJS_5)
     491         
    407492        $(DU) -D $@ > $@.txt
    408493        mcopy -o -i $(DISK_IMAGE) build/kernel/kernel.elf ::/bin/kernel
Note: See TracChangeset for help on using the changeset viewer.