-add_typelib(jsglobal jsglobal.idl)
-add_dependencies(jsglobal stdole2)
-
-remove_definitions(-D_WIN32_WINNT=0x502)
-add_definitions(-D_WIN32_WINNT=0x600)
-
add_definitions(
-D__WINESRC__
- -D_USE_MATH_DEFINES
- -D_DLL
- -D__USE_CRTIMP
- -Disinf=!_finite
- -Disnan=_isnan)
+ -D_USE_MATH_DEFINES)
include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
-
-set_rc_compiler()
-
spec2def(jscript.dll jscript.spec)
list(APPEND SOURCE
activex.c
+ array.c
+ bool.c
+ compile.c
date.c
+ decode.c
dispex.c
engine.c
error.c
+ function.c
+ global.c
jscript.c
jscript_main.c
+ jsregexp.c
+ jsstr.c
jsutils.c
lex.c
- parser.tab.c
math.c
number.c
object.c
+ parser.tab.c
regexp.c
string.c
- array.c
- bool.c
- function.c
- global.c
- rsrc.rc
+ vbarray.c
${CMAKE_CURRENT_BINARY_DIR}/jscript.def)
-add_library(jscript SHARED ${SOURCE})
+list(APPEND jscript_rc_deps
+ ${CMAKE_CURRENT_SOURCE_DIR}/jscript.rgs
+ ${CMAKE_CURRENT_SOURCE_DIR}/jscript_classes.rgs
+ ${CMAKE_CURRENT_BINARY_DIR}/jsglobal.tlb)
-set_module_type(jscript win32dll)
-
-target_link_libraries(jscript wine)
-if(MSVC)
- target_link_libraries(jscript uuid)
-endif()
+set_source_files_properties(rsrc.rc PROPERTIES OBJECT_DEPENDS "${jscript_rc_deps}")
-add_importlibs(jscript
- msvcrt
- user32
- ole32
- oleaut32
- advapi32
- kernel32
- ntdll)
-
-add_dependencies(jscript jsglobal)
+add_library(jscript SHARED ${SOURCE} rsrc.rc)
+add_idl_headers(jscript_idlheader jscript_classes.idl)
+add_typelib(jsglobal.idl)
+add_dependencies(jscript jscript_idlheader stdole2) # jsglobal.tlb needs stdole2.tlb
+set_module_type(jscript win32dll)
+target_link_libraries(jscript uuid wine)
+add_importlibs(jscript user32 ole32 oleaut32 advapi32 msvcrt kernel32 ntdll)
+add_pch(jscript jscript.h)
add_cd_file(TARGET jscript DESTINATION reactos/system32 FOR all)