diff --git a/dll/CMakeLists.txt b/dll/CMakeLists.txt index df453c6bbd8..91c6f1d21b1 100644 --- a/dll/CMakeLists.txt +++ b/dll/CMakeLists.txt @@ -1,4 +1,4 @@ -add_subdirectory(win32) +add_subdirectory(directx) add_subdirectory(ntdll) - +add_subdirectory(win32) diff --git a/dll/directx/CMakeLists.txt b/dll/directx/CMakeLists.txt new file mode 100644 index 00000000000..c3bfa78caae --- /dev/null +++ b/dll/directx/CMakeLists.txt @@ -0,0 +1,2 @@ + +add_subdirectory(ksuser) diff --git a/dll/directx/ksuser/CMakeLists.txt b/dll/directx/ksuser/CMakeLists.txt new file mode 100644 index 00000000000..a367b479758 --- /dev/null +++ b/dll/directx/ksuser/CMakeLists.txt @@ -0,0 +1,11 @@ + +spec2def(ksuser ${CMAKE_CURRENT_SOURCE_DIR}/ksuser.spec ${CMAKE_CURRENT_BINARY_DIR}/ksuser.def) + +add_library(ksuser SHARED ksuser.c ksuser.rc) + +set_module_type(ksuser win32dll) + +target_link_libraries(ksuser ${CMAKE_CURRENT_BINARY_DIR}/ksuser.def) + +add_importlibs(ksuser ntdll advapi32) +add_dependencies(ksuser ksuser_def psdk bugcodes) diff --git a/drivers/CMakeLists.txt b/drivers/CMakeLists.txt index 3f1db6f442c..3eff666e4ae 100644 --- a/drivers/CMakeLists.txt +++ b/drivers/CMakeLists.txt @@ -4,9 +4,13 @@ add_subdirectory(battery) add_subdirectory(bus) add_subdirectory(filesystems) add_subdirectory(input) +add_subdirectory(ksfilter) add_subdirectory(network) +add_subdirectory(parallel) +add_subdirectory(serial) add_subdirectory(setup) add_subdirectory(storage) +add_subdirectory(usb) add_subdirectory(video) add_subdirectory(wdm) add_subdirectory(wmi) diff --git a/drivers/filesystems/CMakeLists.txt b/drivers/filesystems/CMakeLists.txt index 7cf461373cc..b0cb558c1e7 100644 --- a/drivers/filesystems/CMakeLists.txt +++ b/drivers/filesystems/CMakeLists.txt @@ -3,3 +3,5 @@ add_subdirectory(cdfs) add_subdirectory(ext2) add_subdirectory(fastfat) #add_subdirectory(fastfat_new) +add_subdirectory(npfs) +add_subdirectory(ntfs) diff --git a/drivers/filesystems/npfs/CMakeLists.txt b/drivers/filesystems/npfs/CMakeLists.txt new file mode 100644 index 00000000000..ba8187e0d03 --- /dev/null +++ b/drivers/filesystems/npfs/CMakeLists.txt @@ -0,0 +1,18 @@ + +list(APPEND SOURCE + create.c + finfo.c + fsctrl.c + npfs.c + rw.c + volume.c + npfs.rc) + +add_library(npfs SHARED ${CMAKE_CURRENT_BINARY_DIR}/npfs_npfs.h.gch ${SOURCE}) + +set_target_properties(npfs PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(npfs ntoskrnl hal) + +add_pch(npfs ${CMAKE_CURRENT_SOURCE_DIR}/npfs.h ${SOURCE}) +add_dependencies(npfs psdk bugcodes) diff --git a/drivers/filesystems/ntfs/CMakeLists.txt b/drivers/filesystems/ntfs/CMakeLists.txt new file mode 100644 index 00000000000..59082c4aa54 --- /dev/null +++ b/drivers/filesystems/ntfs/CMakeLists.txt @@ -0,0 +1,26 @@ + +list(APPEND SOURCE + attrib.c + blockdev.c + close.c + create.c + dirctl.c + dispatch.c + fastio.c + fcb.c + finfo.c + fsctl.c + mft.c + misc.c + ntfs.c + rw.c + volinfo.c + ntfs.rc) + +add_library(ntfs SHARED ${CMAKE_CURRENT_BINARY_DIR}/ntfs_ntfs.h.gch ${SOURCE}) + +set_target_properties(ntfs PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(ntfs ntoskrnl hal) +add_pch(ntfs ${CMAKE_CURRENT_SOURCE_DIR}/ntfs.h ${SOURCE}) +add_dependencies(ntfs psdk bugcodes) diff --git a/drivers/ksfilter/CMakeLists.txt b/drivers/ksfilter/CMakeLists.txt new file mode 100644 index 00000000000..6a8aaa161ee --- /dev/null +++ b/drivers/ksfilter/CMakeLists.txt @@ -0,0 +1,2 @@ + +add_subdirectory(ks) diff --git a/drivers/ksfilter/ks/CMakeLists.txt b/drivers/ksfilter/ks/CMakeLists.txt new file mode 100644 index 00000000000..7faa97183fe --- /dev/null +++ b/drivers/ksfilter/ks/CMakeLists.txt @@ -0,0 +1,38 @@ + +add_definitions(-DBUILDING_KS) +add_definitions(-D_COMDDK_) + +add_library(ks SHARED + api.c + allocators.c + bag.c + device.c + deviceinterface.c + driver.c + clocks.c + connectivity.c + event.c + filter.c + filterfactory.c + image.c + irp.c + methods.c + misc.c + pin.c + property.c + topology.c + unknown.c + worker.c + kcom.c + ks.rc) + +set_target_properties(ks PROPERTIES LINK_FLAGS "-Wl,-entry,0 -Wl,--image-base,0x00010000 -Wl,--subsystem,native" SUFFIX ".sys") + +set_module_type(ks kernelmodedriver) + +target_link_libraries(ks + ${CMAKE_CURRENT_SOURCE_DIR}/ks.def + pseh) + +add_importlibs(ks ntoskrnl hal msvcrt) +add_dependencies(ks ks_def psdk bugcodes) diff --git a/drivers/ksfilter/ks/ks.def b/drivers/ksfilter/ks/ks.def new file mode 100644 index 00000000000..4d96f67ea5c --- /dev/null +++ b/drivers/ksfilter/ks/ks.def @@ -0,0 +1,222 @@ +LIBRARY ks.dll + +EXPORTS + @??0CBaseUnknown@@QAE@ABU_GUID@@PAUIUnknown@@@Z@16=@CBaseUnknown_ConstructorWithGUID@16 @1 + @??0CBaseUnknown@@QAE@PAUIUnknown@@@Z@12=@CBaseUnknown_Constructor@12 @2 + @??1CBaseUnknown@@UAE@XZ@8=@CBaseUnknown_DefaultDestructor@8 @3 + @??_FCBaseUnknown@@QAEXXZ@12=@CBaseUnknown_Destructor@12 @4 + ?IndirectedAddRef@CBaseUnknown@@UAGKXZ@4=IIndirectedUnknown_fnAddRef@4 @5 + ?IndirectedQueryInterface@CBaseUnknown@@UAGJABU_GUID@@PAPAX@Z@12=IIndirectedUnknown_fnQueryInterface@12 @6 + ?IndirectedRelease@CBaseUnknown@@UAGKXZ@4=IIndirectedUnknown_fnRelease@4 @7 + ?NonDelegatedAddRef@CBaseUnknown@@UAGKXZ@4=INonDelegatedUnknown_fnAddRef@4 @8 + ?NonDelegatedQueryInterface@CBaseUnknown@@UAGJABU_GUID@@PAPAX@Z@12=INonDelegatedUnknown_fnQueryInterface@12 @9 + ?NonDelegatedRelease@CBaseUnknown@@UAGKXZ@4=IIndirectedUnknown_fnRelease@4 @10 + DllInitialize@4 @11 + KoCreateInstance@20 @12 + KoDeviceInitialize@4 @13 + KoDriverInitialize@12 @14 + KoRelease@4 @15 + KsAcquireControl@4 @16 + KsAcquireDevice@4 @17 + KsAcquireDeviceSecurityLock@8 @18 + KsAcquireResetValue@8 @19 + KsAddDevice@8 @20 + KsAddEvent@8 @21 + KsAddIrpToCancelableQueue@20 @22 + KsAddItemToObjectBag@12 @23 + KsAddObjectCreateItemToDeviceHeader@20 @24 + KsAddObjectCreateItemToObjectHeader@20 @25 + KsAllocateDefaultClock@4 @26 + KsAllocateDefaultClockEx@28 @27 + KsAllocateDeviceHeader@12 @28 + KsAllocateExtraData@12 @29 + KsAllocateObjectBag@8 @30 + KsAllocateObjectCreateItem@16 @31 + KsAllocateObjectHeader@20 @32 + KsCacheMedium@12 @33 + KsCancelIo@8 @34 + KsCancelRoutine@8 @35 + KsCompletePendingRequest@4 @36 + KsCopyObjectBagItems@8 @37 + KsCreateAllocator@12 @38 + KsCreateBusEnumObject@24 @39 + KsCreateClock@12 @40 + KsCreateDefaultAllocator@4 @41 + KsCreateDefaultAllocatorEx@24 @42 + KsCreateDefaultClock@8 @43 + KsCreateDefaultSecurity@8 @44 + KsCreateDevice@20 @45 + KsCreateFilterFactory@32 @46 + KsCreatePin@16 @47 + KsCreateTopologyNode@16 @48 + KsDecrementCountedWorker@4 @49 + KsDefaultAddEventHandler@12 @50 + KsDefaultDeviceIoCompletion@8 @51 + KsDefaultDispatchPnp@8 @52 + KsDefaultDispatchPower@8 @53 + KsDefaultForwardIrp@8 @54 + KsDereferenceBusObject@4 @55 + KsDereferenceSoftwareBusObject@4 @56 + KsDeviceGetBusData@20 @57 + KsDeviceRegisterAdapterObject@16 @58 + KsDeviceSetBusData@20 @59 + KsDisableEvent@16 @60 + KsDiscardEvent@4 @61 + KsDispatchFastIoDeviceControlFailure@36 @62 + KsDispatchFastReadFailure@32 @63 + KsDispatchInvalidDeviceRequest@8 @64 + KsDispatchIrp@8 @65 + KsDispatchQuerySecurity@8 @66 + KsDispatchSetSecurity@8 @67 + KsDispatchSpecificMethod@8 @68 + KsDispatchSpecificProperty@8 @69 + _KsEdit@20 @70 + KsEnableEvent@24 @71 + KsEnableEventWithAllocator@32 @72 + KsFastMethodHandler@32 @73 + KsFastPropertyHandler@32 @74 + KsFilterAcquireProcessingMutex@4 @75 + KsFilterAddTopologyConnections@12 @76 + KsFilterAttemptProcessing@8 @77 + KsFilterCreateNode@12 @78 + KsFilterCreatePinFactory@12 @79 + KsFilterFactoryAddCreateItem@16 @80 + KsFilterFactoryGetSymbolicLink@4 @81 + KsFilterFactorySetDeviceClassesState@8 @82 + KsFilterFactoryUpdateCacheData@8 @83 + KsFilterGetAndGate@4 @84 + KsFilterGetChildPinCount@8 @85 + KsFilterGetFirstChildPin@8 @86 + KsFilterRegisterPowerCallbacks@12 @87 + KsFilterReleaseProcessingMutex@4 @88 + KsForwardAndCatchIrp@16 @89 + KsForwardIrp@12 @90 + KsFreeDefaultClock@4 @91 + KsFreeDeviceHeader@4 @92 + KsFreeEventList@16 @93 + KsFreeObjectBag@4 @94 + KsFreeObjectCreateItem@8 @95 + KsFreeObjectCreateItemsByContext@8 @96 + KsFreeObjectHeader@4 @97 + KsGenerateDataEvent@12 @98 + KsGenerateEvent@4 @99 + KsGenerateEventList@20 @100 + KsGenerateEvents@28 @101 + KsGetBusEnumIdentifier@4 @102 + KsGetBusEnumParentFDOFromChildPDO@8 @103 + KsGetBusEnumPnpDeviceObject@8 @104 + KsGetDefaultClockState@4 @105 + KsGetDefaultClockTime@4 @106 + KsGetDevice@4 @107 + KsGetDeviceForDeviceObject@4 @108 + KsGetFilterFromIrp@4 @109 + KsGetFirstChild@4 @110 + KsGetImageNameAndResourceId@16 @111 + KsGetNextSibling@4 @112 + KsGetNodeIdFromIrp@4 @113 + KsGetObjectFromFileObject@4 @114 + KsGetObjectTypeFromFileObject@4 @115 + KsGetObjectTypeFromIrp@4 @116 + KsGetOuterUnknown@4 @117 + KsGetParent@4 @118 + KsGetPinFromIrp@4 @119 + KsHandleSizedListQuery@16 @120 + KsIncrementCountedWorker@4 @121 + KsInitializeDevice@16 @122 + KsInitializeDriver@12 @123 + KsInstallBusEnumInterface@4 @124 + KsIsBusEnumChildDevice@8 @125 + KsLoadResource@24 @126 + KsMapModuleName@20 @127 + KsMergeAutomationTables@16 @128 + KsMethodHandler@12 @129 + KsMethodHandlerWithAllocator@20 @130 + KsMoveIrpsOnCancelableQueue@28 @131 + KsNullDriverUnload@4 @132 + KsPinAcquireProcessingMutex@4 @133 + KsPinAttachAndGate@8 @134 + KsPinAttachOrGate@8 @135 + KsPinAttemptProcessing@8 @136 + KsPinDataIntersection@24 @137 + KsPinGetAndGate@4 @138 + KsPinGetAvailableByteCount@12 @139 + KsPinGetConnectedFilterInterface@12 @140 + KsPinGetConnectedPinDeviceObject@4 @141 + KsPinGetConnectedPinFileObject@4 @142 + KsPinGetConnectedPinInterface@12 @143 + KsPinGetCopyRelationships@12 @144 + KsPinGetFirstCloneStreamPointer@4 @145 + KsPinGetLeadingEdgeStreamPointer@8 @146 + KsPinGetNextSiblingPin@4 @147 + KsPinGetParentFilter@4 @148 + KsPinGetReferenceClockInterface@8 @149 + KsPinGetTrailingEdgeStreamPointer@8 @150 + KsPinPropertyHandler@20 @151 + KsPinRegisterFrameReturnCallback@8 @152 + KsPinRegisterHandshakeCallback@8 @153 + KsPinRegisterIrpCompletionCallback@8 @154 + KsPinRegisterPowerCallbacks@12 @155 + KsPinReleaseProcessingMutex@4 @156 + KsPinSetPinClockTime@12 @157 + KsPinSubmitFrame@20 @158 + KsPinSubmitFrameMdl@16 @159 + KsProbeStreamIrp@12 @160 + KsProcessPinUpdate@4 @161 + KsPropertyHandler@12 @162 + KsPropertyHandlerWithAllocator@20 @163 + KsQueryDevicePnpObject@4 @164 + KsQueryInformationFile@16 @165 + KsQueryObjectAccessMask@4 @166 + KsQueryObjectCreateItem@4 @167 + KsQueueWorkItem@8 @168 + KsReadFile@32 @169 + KsRecalculateStackDepth@8 @170 + KsReferenceBusObject@4 @171 + KsReferenceSoftwareBusObject@4 @172 + KsRegisterAggregatedClientUnknown@8 @173 + KsRegisterCountedWorker@12 @174 + KsRegisterFilterWithNoKSPins@24 @175 + KsRegisterWorker@8 @176 + KsReleaseControl@4 @177 + KsReleaseDevice@4 @178 + KsReleaseDeviceSecurityLock@4 @179 + KsReleaseIrpOnCancelableQueue@8 @180 + KsRemoveBusEnumInterface@4 @181 + KsRemoveIrpFromCancelableQueue@16 @182 + KsRemoveItemFromObjectBag@12 @183 + KsRemoveSpecificIrpFromCancelableQueue@4 @184 + KsServiceBusEnumCreateRequest@8 @185 + KsServiceBusEnumPnpRequest@8 @186 + KsSetDefaultClockState@8 @187 + KsSetDefaultClockTime@12 @188 + KsSetDevicePnpAndBaseObject@12 @189 + KsSetInformationFile@16 @190 + KsSetMajorFunctionHandler@8 @191 + KsSetPowerDispatch@12 @192 + KsSetTargetDeviceObject@8 @193 + KsSetTargetState@8 @194 + KsStreamIo@44 @195 + KsStreamPointerAdvance@4 @196 + KsStreamPointerAdvanceOffsets@16 @197 + KsStreamPointerAdvanceOffsetsAndUnlock@16 @198 + KsStreamPointerCancelTimeout@4 @199 + KsStreamPointerClone@16 @200 + KsStreamPointerDelete@4 @201 + KsStreamPointerGetIrp@12 @202 + KsStreamPointerGetMdl@4 @203 + KsStreamPointerGetNextClone@4 @204 + KsStreamPointerLock@4 @205 + KsStreamPointerScheduleTimeout@16 @206 + KsStreamPointerSetStatusCode@8 @207 + KsStreamPointerUnlock@8 @208 + KsSynchronousIoControlDevice@32 @209 + KsTerminateDevice@4 @210 + KsTopologyPropertyHandler@16 @211 + KsUnregisterWorker@4 @212 + KsUnserializeObjectPropertiesFromRegistry@12 @213 + KsValidateAllocatorCreateRequest@8 @214 + KsValidateAllocatorFramingEx@12 @215 + KsValidateClockCreateRequest@8 @216 + KsValidateConnectRequest@16 @217 + KsValidateTopologyNodeCreateRequest@12 @218 + KsWriteFile@32 @219 diff --git a/drivers/parallel/CMakeLists.txt b/drivers/parallel/CMakeLists.txt new file mode 100644 index 00000000000..3efe6046225 --- /dev/null +++ b/drivers/parallel/CMakeLists.txt @@ -0,0 +1,2 @@ + +add_subdirectory(parallel) diff --git a/drivers/parallel/parallel/CMakeLists.txt b/drivers/parallel/parallel/CMakeLists.txt new file mode 100644 index 00000000000..11756303de6 --- /dev/null +++ b/drivers/parallel/parallel/CMakeLists.txt @@ -0,0 +1,7 @@ + +add_library(parallel SHARED parallel.c parallel.rc) + +set_target_properties(parallel PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(parallel ntoskrnl hal) +add_dependencies(parallel psdk bugcodes) diff --git a/drivers/serial/CMakeLists.txt b/drivers/serial/CMakeLists.txt new file mode 100644 index 00000000000..5db43b9c0fc --- /dev/null +++ b/drivers/serial/CMakeLists.txt @@ -0,0 +1,3 @@ + +add_subdirectory(serenum) +add_subdirectory(serial) diff --git a/drivers/serial/serenum/CMakeLists.txt b/drivers/serial/serenum/CMakeLists.txt new file mode 100644 index 00000000000..d0c689be5e9 --- /dev/null +++ b/drivers/serial/serenum/CMakeLists.txt @@ -0,0 +1,13 @@ + +add_library(serenum SHARED + detect.c + fdo.c + misc.c + pdo.c + serenum.c + serenum.rc) + +set_target_properties(serenum PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(serenum ntoskrnl hal) +add_dependencies(serenum psdk bugcodes) diff --git a/drivers/serial/serial/CMakeLists.txt b/drivers/serial/serial/CMakeLists.txt new file mode 100644 index 00000000000..69953f448c9 --- /dev/null +++ b/drivers/serial/serial/CMakeLists.txt @@ -0,0 +1,20 @@ + +add_library(serial SHARED + circularbuffer.c + cleanup.c + close.c + create.c + devctrl.c + info.c + legacy.c + misc.c + pnp.c + power.c + rw.c + serial.c + serial.rc) + +set_target_properties(serial PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(serial ntoskrnl hal) +add_dependencies(serial psdk bugcodes) diff --git a/drivers/storage/ide/CMakeLists.txt b/drivers/storage/ide/CMakeLists.txt index ef65b005265..f49c4ce8bf3 100644 --- a/drivers/storage/ide/CMakeLists.txt +++ b/drivers/storage/ide/CMakeLists.txt @@ -1,3 +1,5 @@ add_subdirectory(atapi) +add_subdirectory(pciide) +add_subdirectory(pciidex) add_subdirectory(uniata) diff --git a/drivers/storage/ide/pciide/CMakeLists.txt b/drivers/storage/ide/pciide/CMakeLists.txt new file mode 100644 index 00000000000..0bb0953f423 --- /dev/null +++ b/drivers/storage/ide/pciide/CMakeLists.txt @@ -0,0 +1,7 @@ + +add_library(pciide SHARED pciide.c pciide.rc) + +set_target_properties(pciide PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(pciide pciidex ntoskrnl) +add_dependencies(pciide psdk bugcodes) diff --git a/drivers/storage/ide/pciidex/CMakeLists.txt b/drivers/storage/ide/pciidex/CMakeLists.txt new file mode 100644 index 00000000000..b3e3538bac8 --- /dev/null +++ b/drivers/storage/ide/pciidex/CMakeLists.txt @@ -0,0 +1,18 @@ + +spec2def(pciidex ${CMAKE_CURRENT_SOURCE_DIR}/pciidex.spec ${CMAKE_CURRENT_BINARY_DIR}/pciidex.def) + +add_library(pciidex SHARED + fdo.c + miniport.c + misc.c + pciidex.c + pdo.c + pciidex.rc) + +set_target_properties(pciidex PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--subsystem,native" SUFFIX ".sys") + +target_link_libraries(pciidex + ${CMAKE_CURRENT_BINARY_DIR}/pciidex.def) + +add_importlibs(pciidex ntoskrnl) +add_dependencies(pciidex pciidex_def psdk bugcodes) diff --git a/drivers/usb/CMakeLists.txt b/drivers/usb/CMakeLists.txt new file mode 100644 index 00000000000..156dcd2c319 --- /dev/null +++ b/drivers/usb/CMakeLists.txt @@ -0,0 +1,3 @@ + +add_subdirectory(nt4compat) +add_subdirectory(usbd) diff --git a/drivers/usb/nt4compat/CMakeLists.txt b/drivers/usb/nt4compat/CMakeLists.txt new file mode 100644 index 00000000000..861e293ff6d --- /dev/null +++ b/drivers/usb/nt4compat/CMakeLists.txt @@ -0,0 +1,2 @@ + +add_subdirectory(usbdriver) diff --git a/drivers/usb/nt4compat/usbdriver/CMakeLists.txt b/drivers/usb/nt4compat/usbdriver/CMakeLists.txt new file mode 100644 index 00000000000..cad6e39d7b3 --- /dev/null +++ b/drivers/usb/nt4compat/usbdriver/CMakeLists.txt @@ -0,0 +1,33 @@ + +add_definitions(-DINCLUDE_EHCI) +add_definitions(-D_MULTI_UHCI) +add_definitions(-D_MULTI_EHCI) +add_definitions(-D_X86) + +list(APPEND SOURCE + ehci.c + ohci.c + uhci.c + roothub.c + hub.c + td.c + usb.c + umss.c + bulkonly.c + cbi.c + devmgr.c + dmgrdisp.c + compdrv.c + etd.c + gendrv.c + mouse.c + keyboard.c + usbdriver.rc) + +add_library(usbdriver SHARED ${CMAKE_CURRENT_BINARY_DIR}/usbdriver_usbdriver.h.gch ${SOURCE}) + +set_target_properties(usbdriver PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--exclude-all-symbols -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(usbdriver ntoskrnl hal) +add_pch(usbdriver ${CMAKE_CURRENT_SOURCE_DIR}/usbdriver.h ${SOURCE}) +add_dependencies(usbdriver psdk bugcodes) diff --git a/drivers/usb/usbd/CMakeLists.txt b/drivers/usb/usbd/CMakeLists.txt new file mode 100644 index 00000000000..02b91adbf51 --- /dev/null +++ b/drivers/usb/usbd/CMakeLists.txt @@ -0,0 +1,12 @@ + +spec2def(usbd ${CMAKE_CURRENT_SOURCE_DIR}/usbd.spec ${CMAKE_CURRENT_BINARY_DIR}/usbd.def) + +add_library(usbd SHARED usbd.c usbd.rc) + +set_target_properties(usbd PROPERTIES LINK_FLAGS "-Wl,-entry,_DriverEntry@8 -Wl,--image-base,0x00010000 -Wl,--subsystem,native" SUFFIX ".sys") + +target_link_libraries(usbd + ${CMAKE_CURRENT_BINARY_DIR}/usbd.def) + +add_importlibs(usbd ntoskrnl hal) +add_dependencies(usbd usbd_def psdk bugcodes) diff --git a/drivers/video/displays/CMakeLists.txt b/drivers/video/displays/CMakeLists.txt index 3b265356a39..ff7fd43541e 100644 --- a/drivers/video/displays/CMakeLists.txt +++ b/drivers/video/displays/CMakeLists.txt @@ -1,2 +1,4 @@ +add_subdirectory(framebuf) +add_subdirectory(framebuf_new) add_subdirectory(vga) diff --git a/drivers/video/displays/framebuf/CMakeLists.txt b/drivers/video/displays/framebuf/CMakeLists.txt new file mode 100644 index 00000000000..10b11d2b8c7 --- /dev/null +++ b/drivers/video/displays/framebuf/CMakeLists.txt @@ -0,0 +1,18 @@ + +spec2def(framebuf ${CMAKE_CURRENT_SOURCE_DIR}/framebuf.spec ${CMAKE_CURRENT_BINARY_DIR}/framebuf.def) + +add_library(framebuf SHARED + enable.c + palette.c + pointer.c + screen.c + surface.c + framebuf.rc) + +set_target_properties(framebuf PROPERTIES LINK_FLAGS "-Wl,-entry,_DrvEnableDriver@12 -Wl,--image-base,0x00010000 -Wl,--subsystem,native") + +target_link_libraries(framebuf + ${CMAKE_CURRENT_BINARY_DIR}/framebuf.def) + +add_importlibs(framebuf win32k) +add_dependencies(framebuf framebuf_def psdk bugcodes) diff --git a/drivers/video/displays/framebuf_new/CMakeLists.txt b/drivers/video/displays/framebuf_new/CMakeLists.txt new file mode 100644 index 00000000000..2dd63d15106 --- /dev/null +++ b/drivers/video/displays/framebuf_new/CMakeLists.txt @@ -0,0 +1,29 @@ + +spec2def(framebuf_new ${CMAKE_CURRENT_SOURCE_DIR}/framebuf_new.spec ${CMAKE_CURRENT_BINARY_DIR}/framebuf_new.def) + +list(APPEND SOURCE + debug.c + enable.c + palette.c + pointer.c + screen.c + framebuf_new.rc) + +add_library(framebuf_new SHARED ${CMAKE_CURRENT_BINARY_DIR}/framebuf_new_driver.h.gch ${SOURCE}) + +if(ARCH MATCHES i386) + if(MSVC) + else() + set_target_properties(framebuf_new PROPERTIES COMPILE_FLAGS "-mrtd -fno-builtin") + endif() +endif() + +set_target_properties(framebuf_new PROPERTIES LINK_FLAGS "-Wl,-entry,_DrvEnableDriver@12 -Wl,--image-base,0x00010000 -Wl,--subsystem,native") + +target_link_libraries(framebuf_new + ${CMAKE_CURRENT_BINARY_DIR}/framebuf_new.def + libcntpr) + +add_importlibs(framebuf_new win32k) +add_pch(framebuf_new ${CMAKE_CURRENT_SOURCE_DIR}/driver.h ${SOURCE}) +add_dependencies(framebuf_new framebuf_new_def psdk bugcodes) diff --git a/drivers/wdm/audio/backpln/CMakeLists.txt b/drivers/wdm/audio/backpln/CMakeLists.txt index 080c124f15e..867bad2f9c5 100644 --- a/drivers/wdm/audio/backpln/CMakeLists.txt +++ b/drivers/wdm/audio/backpln/CMakeLists.txt @@ -1,2 +1,3 @@ add_subdirectory(audio_test) +add_subdirectory(portcls) diff --git a/drivers/wdm/audio/backpln/portcls/CMakeLists.txt b/drivers/wdm/audio/backpln/portcls/CMakeLists.txt new file mode 100644 index 00000000000..169f68ca0a7 --- /dev/null +++ b/drivers/wdm/audio/backpln/portcls/CMakeLists.txt @@ -0,0 +1,65 @@ + +remove_definitions(-D_WIN32_WINNT=0x502) +add_definitions(-D_WIN32_WINNT=0x600) + +spec2def(portcls ${CMAKE_CURRENT_SOURCE_DIR}/portcls.spec ${CMAKE_CURRENT_BINARY_DIR}/portcls.def) + +add_library(portcls SHARED + adapter.cpp + api.cpp + connection.cpp + dispatcher.cpp + dll.cpp + dma_slave.cpp + drm.cpp + drm_port.cpp + filter_topology.cpp + filter_dmus.cpp + filter_wavecyclic.cpp + filter_wavepci.cpp + filter_wavert.cpp + guids.cpp + interrupt.cpp + irp.cpp + irpstream.cpp + miniport.cpp + miniport_dmus.cpp + miniport_fmsynth.cpp + pin_dmus.cpp + pin_wavecyclic.cpp + pin_wavepci.cpp + pin_wavert.cpp + pool.cpp + port.cpp + port_dmus.cpp + port_topology.cpp + port_wavecyclic.cpp + port_wavepci.cpp + port_wavert.cpp + port_wavertstream.cpp + power.cpp + propertyhandler.cpp + purecall.cpp + registry.cpp + resource.cpp + service_group.cpp + undoc.cpp + unregister.cpp + version.cpp + portcls.rc) + +target_link_libraries(portcls + ${CMAKE_CURRENT_BINARY_DIR}/portcls.def + libcntpr + pseh) + +if(MSVC) + set_target_properties(portcls PROPERTIES COMPILE_FLAGS "/GR-") +else() + set_target_properties(portcls PROPERTIES COMPILE_FLAGS "-fno-exceptions -fno-rtti") +endif(MSVC) + +set_target_properties(portcls PROPERTIES LINK_FLAGS "-Wl,-entry,0 -Wl,--image-base,0x00010000 -Wl,--subsystem,native" SUFFIX ".sys") + +add_importlibs(portcls ntoskrnl ks drmk hal stdc++ gcc msvcrt) +add_dependencies(portcls portcls_def psdk bugcodes) diff --git a/importlibs/libpciidex.a b/importlibs/libpciidex.a new file mode 100644 index 00000000000..3b49aac4002 Binary files /dev/null and b/importlibs/libpciidex.a differ