os/kernelhwsrv/kernel/eka/eka.cmake
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
child 1 260cb5ec6c19
permissions -rw-r--r--
First public contribution.
     1 # Copyright (c) 2009-2012 Stéphane Lenclud.
     2 # All rights reserved.
     3 # This component and the accompanying materials are made available
     4 # under the terms of the License "Eclipse Public License v1.0"
     5 # which accompanies this distribution, and is available
     6 # at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 #
     8 # Initial Contributors:
     9 # Stéphane Lenclud.
    10 #
    11 
    12 #Add current file to our source tree
    13 add_cmake_source()
    14 #Make sure all the output from all projects will go in one place
    15 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/../bin)
    16 
    17 add_definitions(-D__SYMC__)
    18 
    19 
    20 #Generate the exec enum using CMAKE custom command
    21 #perl genexec.pl -i execs.txt -e ../include/exec_enum.h -u ../include/exec_user.h -k ../include/exec_kernel.h
    22 add_custom_command (
    23 	OUTPUT ./include/exec_enum.h ./include/exec_user.h ./include/kernel/exec_kernel.h	
    24    	COMMAND perl ./kernel/genexec.pl -i ./kernel/execs.txt -e ./include/exec_enum.h -u ./include/exec_user.h -k ./include/kernel/exec_kernel.h
    25 	WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}	
    26    	COMMENT "Generating exec headers..."
    27    	DEPENDS ./kernel/genexec.pl ./kernel/execs.txt
    28    	VERBATIM
    29  	)
    30 	
    31 #Tell cmake those file won't be available until build time
    32 set_source_files_properties(./include/exec_enum.h PROPERTIES GENERATED 1)
    33 set_source_files_properties(./include/exec_user.h PROPERTIES GENERATED 1)
    34 set_source_files_properties(./include/kernel/exec_kernel.h PROPERTIES GENERATED 1)
    35 
    36 #----------------------------------------------------
    37 # EKA: Custom target that will generate our exec headers 
    38 #----------------------------------------------------
    39 get_source(source)
    40 add_custom_target	(	eka 
    41 						DEPENDS ./include/exec_enum.h ./include/exec_user.h ./include/kernel/exec_kernel.h
    42 						SOURCES ${source}
    43 					)
    44 #TODO: shall we get ride of that genexec?
    45 add_custom_target(genexec)
    46 
    47 add_subdirectory(./euser)
    48 add_subdirectory(./kernel)
    49 #----------------------------------------------------
    50 
    51 
    52 
    53 #--------------------------------------------------
    54 # Symbian exports
    55 #--------------------------------------------------
    56 
    57 public_export(include/gcc.h /)
    58 
    59 ## Kernel interface
    60 platform_export(include/collate.h /)
    61 platform_export(include/k32keys.h /)
    62 platform_export(include/k32keys.inl /)
    63 platform_export(include/u32std.h /)
    64 platform_export(include/u32hal.h /)
    65 platform_export(include/u32property.h /)
    66 platform_export(include/u32exec.h /)
    67 platform_export(include/cpudefs.h /)
    68 platform_export(include/e32cia.h /)
    69 platform_export(include/arm_vfp.h /)
    70 platform_export(include/kernperflogger.h /)
    71 
    72 
    73 
    74 platform_export(include/nkern/dfcs.h /nkern)
    75 platform_export(include/nkern/nkern.h /nkern)
    76 platform_export(include/nkern/nklib.h /nkern)
    77 platform_export(include/nkern/nk_priv.h /nkern)
    78 platform_export(include/nkern/nk_trace.h /nkern)
    79 platform_export(include/nkern/nk_cpu.h /nkern)
    80 
    81 platform_export(include/nkern/arm/nk_plat.h /nkern/arm)
    82 platform_export(include/nkern/win32/nk_plat.h /nkern/win32)
    83 platform_export(include/nkern/x86/nk_plat.h /nkern/x86)
    84 
    85 public_export(nkern/nkern_ext.mmh /nkern)
    86 
    87 
    88 platform_export(include/nkernsmp/dfcs.h /nkernsmp)
    89 platform_export(include/nkernsmp/nkern.h /nkernsmp)
    90 platform_export(include/nkern/nklib.h /nkernsmp)
    91 platform_export(include/nkernsmp/nk_event.h /nkernsmp)
    92 platform_export(include/nkernsmp/nk_priv.h /nkernsmp)
    93 platform_export(include/nkern/nk_trace.h /nkernsmp)
    94 platform_export(include/nkern/nk_cpu.h /nkernsmp)
    95 platform_export(include/nkernsmp/nk_irq.h /nkernsmp)
    96 
    97 platform_export(include/nkernsmp/arm/ncern.h /nkernsmp/arm)
    98 platform_export(include/nkernsmp/arm/nk_plat.h /nkernsmp/arm)
    99 platform_export(include/nkernsmp/arm/arm_gic.h /nkernsmp/arm)
   100 platform_export(include/nkernsmp/arm/arm_scu.h /nkernsmp/arm)
   101 platform_export(include/nkernsmp/arm/arm_tmr.h /nkernsmp/arm)
   102 platform_export(include/nkernsmp/x86/ncern.h /nkernsmp/x86)
   103 platform_export(include/nkernsmp/x86/nk_plat.h /nkernsmp/x86)
   104 platform_export(include/nkernsmp/x86/apic.h /nkernsmp/x86)
   105 
   106 public_export(nkernsmp/nkern_ext.mmh /nkernsmp)
   107 
   108 
   109 platform_export(include/kernel/debug.h /kernel)
   110 platform_export(include/kernel/klib.h /kernel)
   111 platform_export(include/kernel/kdebug.h /kernel)
   112 platform_export(include/kernel/kernel.h /kernel)
   113 platform_export(include/kernel/kern_priv.h /kernel)
   114 platform_export(include/kernel/localise.h /kernel)
   115 platform_export(include/kernel/kpower.h /kernel)
   116 platform_export(include/kernel/sproperty.h /kernel)
   117 platform_export(include/kernel/kernboot.h /kernel)
   118 platform_export(include/kernel/kbma.h /kernel)
   119 
   120 platform_export(include/kernel/ls_std.h /kernel)
   121 
   122 platform_export(include/kernel/monitor.h /kernel)
   123 platform_export(include/kernel/cache.h /kernel)
   124 platform_export(include/kernel/emi.h /kernel)
   125 platform_export(include/nkern/emievents.h /nkern)
   126 
   127 
   128 platform_export(include/nkernsmp/emievents.h /nkernsmp)
   129 
   130 platform_export(include/memmodel/epoc/platform.h /memmodel/epoc)
   131 platform_export(include/memmodel/epoc/plat_priv.h /memmodel/epoc)
   132 platform_export(include/memmodel/epoc/mmubase/mmubase.h /memmodel/epoc/mmubase)
   133 platform_export(include/memmodel/epoc/mmubase/kblockmap.h /memmodel/epoc/mmubase)
   134 platform_export(include/memmodel/epoc/multiple/memmodel.h /memmodel/epoc/multiple)
   135 platform_export(include/memmodel/epoc/moving/memmodel.h /memmodel/epoc/moving)
   136 platform_export(include/memmodel/epoc/direct/memmodel.h /memmodel/epoc/direct)
   137 
   138 platform_export(include/memmodel/emul/platform.h /memmodel/emul)
   139 platform_export(include/memmodel/emul/plat_priv.h /memmodel/emul)
   140 platform_export(include/memmodel/emul/win32/memmodel.h /memmodel/emul/win32)
   141 
   142 platform_export(include/kernel/arm/arm.h /kernel/arm)
   143 platform_export(include/kernel/arm/arm_types.h /kernel/arm)
   144 platform_export(include/kernel/arm/assp.h /kernel/arm)
   145 platform_export(include/kernel/arm/bootcpu.inc /kernel/arm)
   146 platform_export(include/kernel/arm/bootdefs.h /kernel/arm)
   147 platform_export(include/kernel/arm/bootmacro.inc /kernel/arm)
   148 platform_export(include/kernel/arm/bootstrap.lnk /kernel/arm)
   149 platform_export(include/kernel/arm/vfpsupport.h /kernel/arm)
   150 
   151 platform_export(include/kernel/x86/x86.h /kernel/x86)
   152 platform_export(include/kernel/x86/x86boot.h /kernel/x86)
   153 platform_export(include/kernel/x86/assp.h /kernel/x86)
   154 platform_export(include/kernel/x86/bootdefs.h /kernel/x86)
   155 platform_export(include/kernel/x86/bootcpu.inc /kernel/x86)
   156 platform_export(include/kernel/x86/bootmacr.inc /kernel/x86)
   157 
   158 platform_export(include/kernel/win32/win32.h /kernel/win32)
   159 platform_export(include/kernel/win32/assp.h /kernel/win32)
   160 platform_export(include/kernel/win32/property.h /kernel/win32)
   161 
   162 platform_export(include/kernel/sshbuf.h /kernel)
   163 platform_export(include/kernel/smap.h /kernel)
   164 
   165 platform_export(include/memmodel/epoc/moving/arm/arm_mem.h /memmodel/epoc/moving/arm)
   166 platform_export(include/memmodel/epoc/moving/arm/mmboot.h /memmodel/epoc/moving/arm)
   167 platform_export(include/memmodel/epoc/direct/arm/arm_mem.h /memmodel/epoc/direct/arm)
   168 platform_export(include/memmodel/epoc/multiple/arm/arm_mem.h /memmodel/epoc/multiple/arm)
   169 platform_export(include/memmodel/epoc/multiple/arm/mmboot.h /memmodel/epoc/multiple/arm)
   170 platform_export(include/memmodel/epoc/direct/x86/x86_mem.h /memmodel/epoc/direct/x86)
   171 platform_export(include/memmodel/epoc/multiple/x86/x86_mem.h /memmodel/epoc/multiple/x86)
   172 platform_export(include/memmodel/epoc/multiple/x86/mmboot.h /memmodel/epoc/multiple/x86)
   173 platform_export(include/memmodel/epoc/flexible/arm/mmboot.h /memmodel/epoc/flexible/arm)
   174 platform_export(include/memmodel/epoc/flexible/x86/mmboot.h /memmodel/epoc/flexible/x86)
   175 
   176 
   177 public_export(kernel/kern_ext.mmh /kernel)
   178 
   179 platform_export(include/partitions.h /)
   180 
   181 
   182 platform_export(include/drivers/comm.h /drivers)
   183 platform_export(include/drivers/comm.inl /drivers)
   184 platform_export(include/drivers/locmedia.h /drivers)
   185 platform_export(include/drivers/flash_media.h /drivers)
   186 platform_export(include/drivers/nanddevice.h /drivers)
   187 platform_export(include/drivers/pbus.h /drivers)
   188 platform_export(include/drivers/pbus.inl /drivers)
   189 platform_export(include/drivers/pbusmedia.h /drivers)
   190 platform_export(include/drivers/pccard.h /drivers)
   191 platform_export(include/drivers/pccard.inl /drivers)
   192 platform_export(include/drivers/soundsc.h /drivers)
   193 platform_export(include/drivers/soundsc.inl /drivers)
   194 platform_export(include/drivers/xyin.h /drivers)
   195 platform_export(include/drivers/binpower.h /drivers)
   196 platform_export(include/drivers/pccd_chunk.h /drivers)
   197 platform_export(include/drivers/pccd_ifc.h /drivers)
   198 platform_export(include/drivers/pccd_socket.h /drivers)
   199 platform_export(include/drivers/pccd_medchg.h /drivers)
   200 platform_export(include/drivers/pccd_vcc.h /drivers)
   201 platform_export(include/drivers/ethernet.h /drivers)
   202 platform_export(include/drivers/ethernet.inl /drivers)
   203 platform_export(include/drivers/dma.h /drivers)
   204 platform_export(include/drivers/dma_v1.h /drivers)
   205 platform_export(include/drivers/dma_v1.inl /drivers)
   206 platform_export(include/drivers/dma_v2.h /drivers)
   207 platform_export(include/drivers/dma_v2.inl /drivers)
   208 platform_export(include/drivers/dmadefs.h /drivers)
   209 platform_export(include/drivers/dma_compat.inl /drivers)
   210 platform_export(include/drivers/dma_hai.h /drivers)
   211 platform_export(include/drivers/dma_hai.inl /drivers)
   212 platform_export(include/drivers/iic.h /drivers)
   213 platform_export(include/drivers/iic.inl /drivers)
   214 platform_export(include/drivers/iic_channel.h /drivers)
   215 platform_export(include/drivers/iic_channel.inl /drivers)
   216 platform_export(include/drivers/iic_trace.h /drivers)
   217 
   218 
   219 
   220 
   221 platform_export(include/drivers/gpio.h /drivers)
   222 platform_export(include/drivers/mmccd_ifc.h /drivers)
   223 platform_export(include/drivers/mmc.h /drivers)
   224 platform_export(include/drivers/mmc.inl /drivers)
   225 platform_export(include/drivers/sdcard.h /drivers)
   226 platform_export(include/drivers/sdcard.inl /drivers)
   227 platform_export(include/drivers/emmcptn.h /drivers)
   228 
   229 platform_export(include/drivers/crashflash.h /drivers)
   230 platform_export(include/drivers/crashflashnor.h /drivers)
   231 platform_export(include/drivers/crashflashnand.h /drivers)
   232 
   233 platform_export(include/rm_debug_api.h /)
   234 platform_export(include/sm_debug_api.h /)
   235 
   236 platform_export(include/drivers/resourceman.h /drivers)
   237 platform_export(include/drivers/resourceman.inl /drivers)
   238 platform_export(include/drivers/resourcecontrol.h /drivers)
   239 platform_export(include/drivers/resourcecontrol.inl /drivers)
   240 platform_export(include/drivers/resource.h /drivers)
   241 platform_export(include/drivers/resourcecontrol_trace.h /drivers)
   242 platform_export(include/drivers/resource_category.h /drivers)
   243 platform_export(include/drivers/resource_extend.h /drivers)
   244 
   245 ## Power Resource Manager User-Side API
   246 platform_export(include/drivers/resmanus_trace.h /drivers)
   247 
   248 platform_export(include/drivers/i2s.h /drivers)
   249 
   250 platform_export(include/drivers/display.h /drivers)
   251 
   252 ## Example RTOS personality layer
   253 platform_export(personality/example/personality.h /personality/example)
   254 platform_export(personality/example/personality_int.h /personality/example)
   255 
   256 
   257 ## User interface
   258 public_export(include/e32atomics.h /)
   259 public_export(include/e32base.h /)
   260 platform_export(include/e32base_private.h /)
   261 public_export(include/e32base.inl /)
   262 public_export(include/e32capability.h /)
   263 public_export(include/e32cons.h /)
   264 public_export(include/e32const.h /)
   265 platform_export(include/e32const_private.h /)
   266 public_export(include/e32cmn.h /)
   267 platform_export(include/e32cmn_private.h /)
   268 public_export(include/e32cmn.inl /)
   269 public_export(include/e32def.h /)
   270 platform_export(include/e32def_private.h /)
   271 public_export(include/e32des16.h /)
   272 platform_export(include/e32des16_private.h /)
   273 public_export(include/e32des8.h /)
   274 platform_export(include/e32des8_private.h /)
   275 public_export(include/e32err.h /)
   276 platform_export(include/e32hal.h /)
   277 public_export(include/e32hashtab.h /)
   278 public_export(include/e32keys.h /)
   279 public_export(include/e32lang.h /)
   280 public_export(include/e32reg.h /)
   281 public_export(include/e32math.h /)
   282 public_export(include/e32math.inl /)
   283 public_export(include/e32panic.h /)
   284 platform_export(include/e32power.h /)
   285 public_export(include/e32property.h /)
   286 public_export(include/e32kpan.h /)
   287 platform_export(include/e32rom.h /)
   288 public_export(include/e32std.h /)
   289 platform_export(include/e32std_private.h /)
   290 public_export(include/e32std.inl /)
   291 platform_export(include/e32svr.h /)
   292 platform_export(include/e32notif.h /)
   293 platform_export(include/e32ktran.h /)
   294 public_export(include/e32debug.h /)
   295 platform_export(include/e32lmsg.h /)
   296 public_export(include/e32event.h /)
   297 platform_export(include/e32event_private.h /)
   298 public_export(include/e32ldr.h /)
   299 platform_export(include/e32ldr_private.h /)
   300 public_export(include/e32test.h /)
   301 platform_export(include/e32uid.h /)
   302 platform_export(include/e32ver.h /)
   303 platform_export(include/e32wins.h /)
   304 
   305 platform_export(include/winsdef.h /)
   306 platform_export(include/emulator.h /)
   307 platform_export(include/d32comm.h /)
   308 platform_export(include/d32comm.inl /)
   309 platform_export(include/d32fir.h /)
   310 platform_export(include/d32locd.h /)
   311 platform_export(include/d32locd.inl /)
   312 platform_export(include/unicode.h /)
   313 platform_export(include/e32twin.h /)
   314 platform_export(include/twintnotifier.h /)
   315 platform_export(include/videodriver.h /)
   316 platform_export(include/d32ethernet.h /)
   317 platform_export(include/d32ethernet.inl /)
   318 platform_export(include/d32soundsc.h /)
   319 platform_export(include/d32soundsc.inl /)
   320 public_export(include/e32msgqueue.h /)
   321 public_export(include/e32msgqueue.inl /)
   322 public_export(include/d32public.h /)
   323 platform_export(include/d32usbcshared.h /)
   324 platform_export(include/d32usbcshared.inl /)
   325 platform_export(include/d32usbcsc.h /)
   326 platform_export(include/d32usbcsc.inl /)
   327 platform_export(include/d32usbc.h /)
   328 platform_export(include/d32usbc.inl /)
   329 platform_export(include/usb.h /)
   330 platform_export(include/d32usbdi.h /)
   331 platform_export(include/d32usbdi.inl /)
   332 platform_export(include/d32usbdi_errors.h /)
   333 platform_export(include/d32usbdi_hubdriver.h /)
   334 platform_export(include/d32usbdi_hubdriver.inl /)
   335 platform_export(include/d32usbtransfers.h /)
   336 platform_export(include/d32usbdescriptors.h /)
   337 platform_export(include/d32camerasc.h /)
   338 platform_export(include/d32camerasc.inl /)
   339 platform_export(include/d32otgdi.h /)
   340 platform_export(include/d32otgdi.inl /)
   341 platform_export(include/d32otgdi_errors.h /)
   342 platform_export(include/d32btrace.h /)
   343 platform_export(include/e32btrace.h /)
   344 platform_export(include/rpipe.h /)
   345 public_export(include/e32modes.h /)
   346 platform_export(include/pixelformats.h /)
   347 platform_export(include/dispchannel.h /)
   348 platform_export(include/dispchannel.inl /)
   349 
   350 platform_export(include/d32resmanus.h /)
   351 platform_export(include/d32resmanus.inl /)
   352 
   353 ## Unified Trace Framework API
   354 platform_export(include/e32utf.h /)
   355 platform_export(include/e32utrace.inl /)
   356 platform_export(include/e32utrace_basic_types.h /)
   357 public_export(include/e32utrace.mmh /)
   358 
   359 
   360 ## Byte pair compressor
   361 platform_export(include/byte_pair_compress.h /)
   362 
   363 ## shareable data buffers
   364 platform_export(include/e32shbuf.h /)
   365 platform_export(include/e32shbufcmn.h /)
   366 platform_export(include/e32shbuf_priv.h /)
   367 
   368 
   369 public_export(include/drivers/iic_transaction.h /drivers)						
   370 public_export(include/drivers/iic_transaction.inl /drivers)
   371 
   372 
   373 
   374 public_export(include/drivers/usbcshared.h /drivers)						
   375 public_export(include/drivers/usbcshared.inl /drivers)						
   376 
   377 public_export(include/drivers/usbc.h /drivers)						
   378 public_export(include/drivers/usbc.inl /drivers)						
   379 
   380 public_export(include/drivers/usbcsc.h /drivers)						
   381 public_export(include/drivers/usbcsc.inl /drivers)						
   382 
   383 
   384 public_export(include/drivers/usbcque.h /drivers)						
   385 public_export(include/drivers/usbcdesc.h /drivers)						
   386 
   387 public_export(include/drivers/usbdi_hub.h /drivers)						
   388 public_export(include/drivers/usbdi_channel.h /drivers)						
   389 
   390 public_export(include/drivers/camerasc.h /drivers)						
   391 public_export(include/drivers/camerasc.inl /drivers)						
   392 
   393 public_export(include/drivers/otgdi.h /drivers)
   394 
   395 
   396 ## Open System Trace API
   397 platform_export(include/opensystemtrace.h /)
   398 platform_export(include/opensystemtrace.inl /)
   399 platform_export(include/opensystemtrace_types.h /)
   400 platform_export(include/opensystemtrace.mmh /)
   401 
   402 
   403 #SL:
   404 platform_export(include/exec_enum.h /)
   405 platform_export(include/exec_user.h /)
   406 platform_export(include/win32crt.h /)
   407 platform_export(include/x86hlp.inl /)
   408 
   409 
   410 
   411 #--------------------------------------------------
   412