From ef1e9cefa132ab0be7d584167ecf1272633c5427 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=A9r=C3=B4me=20Gardou?= Date: Wed, 27 Oct 2010 14:00:51 +0000 Subject: [PATCH] [CMAKE] - use baseaddresses for dlls svn path=/branches/cmake-bringup/; revision=49305 --- CMakeLists.txt | 2 + baseaddress.cmake | 260 ++++++++++++++++++++++++++++++++++++++++++++++ gcc.cmake | 5 + 3 files changed, 267 insertions(+) create mode 100644 baseaddress.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 6e8238fc673..fbeaf9c90de 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -139,6 +139,8 @@ add_custom_command( add_custom_target(livecd DEPENDS ${REACTOS_BINARY_DIR}/livecd.iso) add_livecd(${REACTOS_SOURCE_DIR}/boot/bootdata/livecd.ini "" freeldr.ini) +include(baseaddress.cmake) + add_subdirectory(base) add_subdirectory(boot) add_subdirectory(dll) diff --git a/baseaddress.cmake b/baseaddress.cmake new file mode 100644 index 00000000000..e9016dd8e2c --- /dev/null +++ b/baseaddress.cmake @@ -0,0 +1,260 @@ +set(baseaddress_regtests 0x07000000) +set(baseaddress_notifyhook 0x08000000) +set(baseaddress_faultrep 0x107a0000) +set(baseaddress_qmgrprxy 0x1f710000) +set(baseaddress_cryptdlg 0x209c0000) +set(baseaddress_comcat 0x20a50000) +set(baseaddress_windowscodecs 0x26c40000) +set(baseaddress_devenum 0x35670000) +set(baseaddress_rsabase 0x35700000) +set(baseaddress_rsaenh 0x35780000) +set(baseaddress_url 0x42ea0000) +set(baseaddress_wlanapi 0x470f0000) +set(baseaddress_pidgen 0x473e0000) +set(baseaddress_dwmapi 0x4a3f0000) +set(baseaddress_t2embed 0x4b310000) +set(baseaddress_msftedit 0x4b460000) +set(baseaddress_loadperf 0x4b920000) +set(baseaddress_mprapi 0x4c400000) +set(baseaddress_wuapi 0x506a0000) +set(baseaddress_srclient 0x512c0000) +set(baseaddress_pstorec 0x513d0000) +set(baseaddress_lpk 0x516c0000) +set(baseaddress_msgsm32acm 0x56db0000) +set(baseaddress_msdvbnp 0x58280000) +set(baseaddress_msg711acm 0x584f0000) +set(baseaddress_imaadp32acm 0x585e0000) +set(baseaddress_bdaplgin 0x58600000) +set(baseaddress_telephon 0x58750000) +set(baseaddress_pwrcfg 0x587e0000) +set(baseaddress_mmsys 0x588a0000) +set(baseaddress_joy 0x589b0000) +set(baseaddress_qmgr 0x59620000) +set(baseaddress_msvidctl 0x59660000) +set(baseaddress_uxtheme 0x5ad70000) +set(baseaddress_vdmdbg 0x5b0d0000) +set(baseaddress_untfs 0x5b340000) +set(baseaddress_objsel 0x5b400000) +set(baseaddress_ufat 0x5b570000) +set(baseaddress_tapiui 0x5b770000) +set(baseaddress_uext2 0x5b7a0000) +set(baseaddress_slayer 0x5c7e0000) +set(baseaddress_usrmgr 0x5c900000) +set(baseaddress_shimgvw 0x5cb00000) +set(baseaddress_commctrl 0x5d090000) +set(baseaddress_dplayx 0x5e080000) +set(baseaddress_input 0x5e400000) +set(baseaddress_ntlanman 0x5f380000) +set(baseaddress_dinput 0x5f580000) +set(baseaddress_netid 0x5f660000) +set(baseaddress_ntprint 0x5f6a0000) +set(baseaddress_mssip32 0x60430000) +set(baseaddress_msisip 0x60b10000) +set(baseaddress_inseng 0x61000000) +set(baseaddress_qedit 0x611c0000) +set(baseaddress_modemui 0x61650000) +set(baseaddress_mapi32 0x62250000) +set(baseaddress_mciwave 0x622a0000) +set(baseaddress_mciseq 0x622b0000) +set(baseaddress_mciqtz32 0x622c0000) +set(baseaddress_mcicda 0x622e0000) +set(baseaddress_localui 0x62f70000) +set(baseaddress_hdwwiz 0x64d40000) +set(baseaddress_timedate 0x64da0000) +set(baseaddress_sysdm 0x64dd0000) +set(baseaddress_ncpl 0x64ea0000) +set(baseaddress_main 0x64f40000) +set(baseaddress_intl 0x64fb0000) +set(baseaddress_desk 0x65080000) +set(baseaddress_appwiz 0x65100000) +set(baseaddress_mlang 0x65140000) +set(baseaddress_access 0x65180000) +set(baseaddress_itss 0x66370000) +set(baseaddress_itircl 0x663a0000) +set(baseaddress_inetmib1 0x666f0000) +set(baseaddress_initpki 0x66b00000) +set(baseaddress_wshtcpip 0x677b0000) +set(baseaddress_crypt32 0x67ab0000) +set(baseaddress_httpapi 0x67ae0000) +set(baseaddress_hid 0x688f0000) +set(baseaddress_psxdll 0x68eb0000) +set(baseaddress_psapi 0x68f70000) +set(baseaddress_ksproxy 0x68f90000) +set(baseaddress_getuname 0x69110000) +set(baseaddress_oleacc 0x69640000) +set(baseaddress_winmm 0x697d0000) +set(baseaddress_msimg32 0x69cc0000) +set(baseaddress_browseui 0x69cd0000) +set(baseaddress_netplwiz 0x6a240000) +set(baseaddress_shell32 0x6a360000) +set(baseaddress_unicode 0x6b200000) +set(baseaddress_advpack 0x6b300000) +set(baseaddress_control 0x6b310000) +set(baseaddress_ncpa 0x6b320000) +set(baseaddress_dbghelp 0x6b330000) +set(baseaddress_dinput8 0x6b340000) +set(baseaddress_dxdiagn 0x6b350000) +set(baseaddress_dsound 0x6b360000) +set(baseaddress_glu32 0x6b370000) +set(baseaddress_mesa32 0x6b380000) +set(baseaddress_opengl32 0x6b390000) +set(baseaddress_secur32 0x6b3a0000) +set(baseaddress_smdll 0x6b3b0000) +set(baseaddress_urlmon 0x6b3c0000) +set(baseaddress_serialui 0x6b3d0000) +set(baseaddress_hlink 0x6c6e0000) +set(baseaddress_deskmon 0x6d400000) +set(baseaddress_deskadp 0x6d410000) +set(baseaddress_wldap32 0x6e130000) +set(baseaddress_sxs 0x6e160000) +set(baseaddress_schannel 0x6e360000) +set(baseaddress_console 0x6e4d0000) +set(baseaddress_compstui 0x6ec10000) +set(baseaddress_hnetcfg 0x6edb0000) +set(baseaddress_clb 0x6f2b0000) +set(baseaddress_fontext 0x6f7b0000) +set(baseaddress_jscript 0x6fe80000) +set(baseaddress_cards 0x701a0000) +set(baseaddress_wininet 0x70200000) +set(baseaddress_winhttp 0x70c60000) +set(baseaddress_batt 0x70cb0000) +set(baseaddress_amstream 0x71030000) +set(baseaddress_aclui 0x71550000) +set(baseaddress_dhcpcsvc 0x71650000) +set(baseaddress_shdocvw 0x71700000) +set(baseaddress_actxprxy 0x71800000) +set(baseaddress_mswsock 0x71a30000) +set(baseaddress_wsock32 0x71ab0000) +set(baseaddress_acledit 0x71b70000) +set(baseaddress_netapi32 0x71c00000) +set(baseaddress_olesvr32 0x71dd0000) +set(baseaddress_olecli32 0x71df0000) +set(baseaddress_olethk32 0x71e10000) +set(baseaddress_netevent 0x71e70000) +set(baseaddress_dplay 0x71e80000) +set(baseaddress_security 0x71f10000) +set(baseaddress_mssign32 0x720c0000) +set(baseaddress_cryptui 0x720d0000) +set(baseaddress_winfax 0x722c0000) +set(baseaddress_winscard 0x723d0000) +set(baseaddress_devmgr 0x72a90000) +set(baseaddress_msadp32acm 0x72cb0000) +set(baseaddress_wdmaud.drv 0x72d20000) +set(baseaddress_winspool 0x72f50000) +set(baseaddress_softpub 0x73290000) +set(baseaddress_mscat32 0x732b0000) +set(baseaddress_mstask 0x73520000) +set(baseaddress_traffic 0x73550000) +set(baseaddress_mciavi32 0x73610000) +set(baseaddress_msvidc32 0x73650000) +set(baseaddress_msrle32 0x73660000) +set(baseaddress_msdmo 0x73670000) +set(baseaddress_avicap32 0x739e0000) +set(baseaddress_avifil32 0x73ac0000) +set(baseaddress_mscms 0x73af0000) +set(baseaddress_dciman32 0x73b10000) +set(baseaddress_sti 0x73b60000) +set(baseaddress_iccvid 0x73bc0000) +set(baseaddress_coredll 0x73d80000) +set(baseaddress_lz32 0x73d80000) +set(baseaddress_ksuser 0x73ea0000) +set(baseaddress_icmp 0x741f0000) +set(baseaddress_spoolss 0x742a0000) +set(baseaddress_msimtf 0x746b0000) +set(baseaddress_msctf 0x746e0000) +set(baseaddress_kbsdll 0x74720000) +set(baseaddress_quartz 0x747d0000) +set(baseaddress_userenv 0x74850000) +set(baseaddress_syssetup 0x74a10000) +set(baseaddress_ws2_32 0x74aa0000) +set(baseaddress_powrprof 0x74ad0000) +set(baseaddress_msxml3 0x74ae0000) +set(baseaddress_printui 0x74b40000) +set(baseaddress_sndblst 0x74c30000) +set(baseaddress_pdh 0x74c70000) +set(baseaddress_oledlg 0x74d00000) +set(baseaddress_samsrv 0x74f30000) +set(baseaddress_resutils 0x75070000) +set(baseaddress_samlib 0x750c0000) +set(baseaddress_cabinet 0x75120000) +set(baseaddress_netcfgx 0x755f0000) +set(baseaddress_iphlpapi 0x75700000) +set(baseaddress_nddeapi 0x75940000) +set(baseaddress_msgina 0x75970000) +set(baseaddress_localspl 0x75b80000) +set(baseaddress_cryptnet 0x75e60000) +set(baseaddress_rpcrt4 0x76000000) +set(baseaddress_shlwapi 0x76100000) +set(baseaddress_inetcomm 0x76140000) +set(baseaddress_comctl32 0x76170000) +set(baseaddress_comdlg32 0x76230000) +set(baseaddress_winsta 0x762f0000) +set(baseaddress_imm32 0x76320000) +set(baseaddress_d3d8thk 0x76340000) +set(baseaddress_riched32 0x76340000) +set(baseaddress_riched20 0x76360000) +set(baseaddress_odbccp32 0x76380000) +set(baseaddress_twain_32 0x76380000) +set(baseaddress_netshell 0x76390000) +set(baseaddress_lsasrv 0x76540000) +set(baseaddress_midimap 0x76600000) +set(baseaddress_wavemap 0x76610000) +set(baseaddress_mpr 0x76620000) +set(baseaddress_mshtml 0x76650000) +set(baseaddress_odbc32 0x76710000) +set(baseaddress_setupapi 0x76730000) +set(baseaddress_cryptdll 0x768f0000) +set(baseaddress_shfolder 0x76900000) +set(baseaddress_ntdsapi 0x76910000) +set(baseaddress_ntmarta 0x76920000) +set(baseaddress_rasdlg 0x76930000) +set(baseaddress_gdiplus 0x76a70000) +set(baseaddress_atl 0x76ac0000) +set(baseaddress_sfc 0x76b50000) +set(baseaddress_credui 0x76bf0000) +set(baseaddress_sfc_os 0x76c10000) +set(baseaddress_wintrust 0x76c30000) +set(baseaddress_imagehlp 0x76c90000) +set(baseaddress_clusapi 0x76d10000) +set(baseaddress_wmi 0x76d20000) +set(baseaddress_dhcpcsvc 0x76d80000) +set(baseaddress_fmifs 0x76df0000) +set(baseaddress_oleaut32 0x76e00000) +set(baseaddress_tapi32 0x76e60000) +set(baseaddress_rasman 0x76e90000) +set(baseaddress_rasapi32 0x76ee0000) +set(baseaddress_wtsapi32 0x76f50000) +set(baseaddress_msvfw32 0x76f60000) +set(baseaddress_msacm32 0x77400000) +set(baseaddress_crtdll 0x77630000) +set(baseaddress_authz 0x77690000) +set(baseaddress_cfgmgr32 0x77700000) +set(baseaddress_sensapi 0x77700000) +set(baseaddress_msafd 0x77780000) +set(baseaddress_packet 0x77780000) +set(baseaddress_msi 0x77790000) +set(baseaddress_snmpapi 0x777a0000) +set(baseaddress_usp10 0x777b0000) +set(baseaddress_iprtprio 0x777c0000) +set(baseaddress_ws2help 0x777e0000) +set(baseaddress_wshirda 0x777f0000) +set(baseaddress_version 0x77a40000) +set(baseaddress_ole32 0x77a50000) +set(baseaddress_olepro32 0x77b20000) +set(baseaddress_activeds 0x77cb0000) +set(baseaddress_advapi32 0x77dc0000) +set(baseaddress_user32 0x77e50000) +set(baseaddress_gdi32 0x77f70000) +set(baseaddress_dnsapi 0x77fb0000) +set(baseaddress_msvcrt 0x78000000) +set(baseaddress_msvcrt20 0x78500000) +set(baseaddress_msvcrt40 0x78700000) +set(baseaddress_mscoree 0x79000000) +set(baseaddress_fusion 0x79040000) +set(baseaddress_kernel32 0x7c700000) +set(baseaddress_ntdll 0x7c900000) +set(baseaddress_query 0x7d9a0000) +set(baseaddress_hhctrl 0x7e410000) +set(baseaddress_sxs 0x7e690000) +set(baseaddress_beepmidi 0x7ef00000) +set(baseaddress_freetype 0x7f000000) diff --git a/gcc.cmake b/gcc.cmake index e557d9637e1..25ed337d31c 100644 --- a/gcc.cmake +++ b/gcc.cmake @@ -105,6 +105,11 @@ macro(set_module_type MODULE TYPE) endif() if(${TYPE} MATCHES win32dll) set_entrypoint(${MODULE} DllMain@12) + if(DEFINED baseaddress_${MODULE}) + set_image_base(${MODULE} ${baseaddress_${MODULE}}) + else() + message(WARNING "${MODULE} has no base address") + endif() endif() if(${TYPE} MATCHES win32ocx) set_entrypoint(${MODULE} DllMain@12) -- 2.17.1