author | Slion |
Tue, 08 Dec 2009 08:11:42 +0100 | |
branch | anywhere |
changeset 19 | f6d3d9676ee4 |
parent 18 | 1ff3ff4e270f |
child 21 | af091391d962 |
permissions | -rw-r--r-- |
18 | 1 |
# Copyright (c) 2009 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 |
project (eka) |
|
13 |
||
14 |
cmake_minimum_required(VERSION 2.6) |
|
15 |
||
16 |
#add_definitions(-DUNICODE) |
|
17 |
add_definitions(-D__VC32__) |
|
18 |
add_definitions(-D_UNICODE) |
|
19 |
add_definitions(-D__LEAVE_EQUALS_THROW__) |
|
19
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
20 |
add_definitions(-D__WINS__) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
21 |
#__CPU_X86 is declared by __WINS__ |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
22 |
#add_definitions(-D__CPU_X86) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
23 |
add_definitions(-D__DLL__) |
18 | 24 |
|
25 |
include_directories (./euser ./euser/unicode ./include) |
|
26 |
||
27 |
#Adding the sources from cbase |
|
28 |
set (sourcepath ./euser/cbase/) |
|
29 |
set (source ${source} |
|
30 |
${sourcepath}ub_act.cpp ${sourcepath}ub_array.cpp ${sourcepath}ub_bma.cpp ${sourcepath}ub_buf.cpp |
|
31 |
${sourcepath}ub_circ.cpp ${sourcepath}ub_cln.cpp ${sourcepath}ub_cons.cpp ${sourcepath}ub_dtim.cpp |
|
32 |
${sourcepath}ub_obj.cpp ${sourcepath}ub_svr.cpp ${sourcepath}ub_polsvr.cpp |
|
33 |
${sourcepath}ub_tim.cpp ${sourcepath}ub_utl.cpp ${sourcepath}ub_tque.cpp |
|
34 |
) |
|
35 |
||
36 |
#Add euser sources |
|
37 |
set (sourcepath ./euser/) |
|
38 |
set (source ${source} |
|
39 |
${sourcepath}us_evnt.cpp ${sourcepath}locmapping.cpp ${sourcepath}us_exec.cpp ${sourcepath}us_func.cpp |
|
40 |
${sourcepath}us_graph.cpp ${sourcepath}us_hand.cpp ${sourcepath}us_ksvr.cpp ${sourcepath}us_des.cpp |
|
41 |
${sourcepath}us_lex16.cpp ${sourcepath}us_lex8.cpp ${sourcepath}us_loc.cpp ${sourcepath}us_mes.cpp |
|
42 |
${sourcepath}us_parse.cpp ${sourcepath}us_power.cpp ${sourcepath}us_property.cpp ${sourcepath}us_que.cpp |
|
43 |
${sourcepath}us_ref.cpp ${sourcepath}us_regn.cpp ${sourcepath}us_test.cpp ${sourcepath}us_time.cpp |
|
44 |
${sourcepath}us_trp.cpp ${sourcepath}us_utl.cpp ${sourcepath}us_mqueue.cpp ${sourcepath}us_encode.cpp |
|
45 |
${sourcepath}us_decode.cpp ${sourcepath}us_secure.cpp ${sourcepath}us_htab.cpp ${sourcepath}us_rwlock.cpp |
|
46 |
${sourcepath}us_shbuf.cpp |
|
47 |
) |
|
48 |
||
49 |
#Adding the sources from common |
|
50 |
set (sourcepath ./common/) |
|
51 |
set (source ${source} |
|
52 |
${sourcepath}array.cpp ${sourcepath}des8.cpp ${sourcepath}des16.cpp ${sourcepath}alloc.cpp ${sourcepath}heap.cpp |
|
53 |
${sourcepath}mem.cpp ${sourcepath}secure.cpp |
|
54 |
) |
|
55 |
||
19
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
56 |
#Adding the sources from common/win32 |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
57 |
set (sourcepath ./common/win32/) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
58 |
set (source ${source} |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
59 |
${sourcepath}atomics.cpp |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
60 |
) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
61 |
|
18 | 62 |
#Adding the sources from maths |
63 |
set (sourcepath ./euser/maths/) |
|
64 |
set (source ${source} |
|
65 |
${sourcepath}um_asin.cpp ${sourcepath}um_atan.cpp ${sourcepath}um_dtor.cpp ${sourcepath}um_exp.cpp |
|
66 |
${sourcepath}um_frac.cpp ${sourcepath}um_int.cpp ${sourcepath}um_ln.cpp ${sourcepath}um_log.cpp |
|
67 |
${sourcepath}um_mod.cpp ${sourcepath}um_pow.cpp ${sourcepath}um_pow10.cpp |
|
68 |
${sourcepath}um_rand.cpp ${sourcepath}um_rtod.cpp ${sourcepath}um_sin.cpp ${sourcepath}um_spec.cpp |
|
69 |
${sourcepath}um_sqrt.cpp ${sourcepath}um_tan.cpp ${sourcepath}um_utl.cpp |
|
70 |
) |
|
71 |
||
72 |
#Adding the sources from epoc/win32 |
|
73 |
set (sourcepath ./euser/epoc/win32/) |
|
74 |
set (source ${source} |
|
75 |
${sourcepath}uc_i64.cpp ${sourcepath}uc_realx.cpp |
|
76 |
${sourcepath}uc_trp.cpp ${sourcepath}uc_utl.cpp ${sourcepath}uc_exec.cpp |
|
77 |
) |
|
78 |
||
79 |
#Adding the sources from epoc |
|
80 |
set (sourcepath ./euser/epoc/) |
|
81 |
set (source ${source} |
|
82 |
${sourcepath}up_lib.cpp ${sourcepath}up_utl.cpp |
|
83 |
) |
|
84 |
||
85 |
#Adding the sources from unicode |
|
86 |
set (sourcepath ./euser/unicode/) |
|
87 |
set (source ${source} |
|
88 |
${sourcepath}collate.cpp ${sourcepath}unicode.cpp ${sourcepath}unitable.cpp ${sourcepath}Compare.cpp |
|
89 |
) |
|
90 |
||
91 |
#define our library |
|
19
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
92 |
add_library (emulator SHARED ./euser/epoc/win32/emulator.cpp) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
93 |
target_link_libraries(emulator kernel32) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
94 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
95 |
add_library (euser SHARED ${source}) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
96 |
target_link_libraries(euser emulator) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
97 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
98 |
add_library (estub ./euser/epoc/win32/uc_stub.cpp) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
99 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
100 |
add_executable(epoc ./euser/epoc/win32/uc_epoc.cpp) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
101 |
target_link_libraries(epoc estub euser) |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
102 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
103 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
104 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
105 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
106 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
107 |
|
18 | 108 |
|
109 |
#define vs IDE folders |
|
110 |
source_group(Sources REGULAR_EXPRESSION ".+\\.cpp$") |
|
111 |
source_group(Includes REGULAR_EXPRESSION ".+\\.h$") |
|
19
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
112 |
|
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
113 |
#TODO: generate the exec enum |
f6d3d9676ee4
Trying to figure out how to implement my WINC like compatibility layer. Going the emulation way is probably not so smart. We should not use the kernel but rather hook native functions in the Exec calls.
Slion
parents:
18
diff
changeset
|
114 |
#perl genexec.pl -i execs.txt -e ../include/exec_enum.h -u ../include/exec_user.h -k ../include/exec_kernel.h |