[CMAKE]
authorAmine Khaldi <amine.khaldi@reactos.org>
Fri, 1 Oct 2010 00:15:10 +0000 (00:15 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Fri, 1 Oct 2010 00:15:10 +0000 (00:15 +0000)
- Add ksuser, npfs, ntfs, ks, parallel, serenum, serial, pciide, pciidex, usbdriver, usbd, framebuf, framebuf_new and portcls to build. By Alexey Komarov.

svn path=/branches/cmake-bringup/; revision=48951

28 files changed:
dll/CMakeLists.txt
dll/directx/CMakeLists.txt [new file with mode: 0644]
dll/directx/ksuser/CMakeLists.txt [new file with mode: 0644]
drivers/CMakeLists.txt
drivers/filesystems/CMakeLists.txt
drivers/filesystems/npfs/CMakeLists.txt [new file with mode: 0644]
drivers/filesystems/ntfs/CMakeLists.txt [new file with mode: 0644]
drivers/ksfilter/CMakeLists.txt [new file with mode: 0644]
drivers/ksfilter/ks/CMakeLists.txt [new file with mode: 0644]
drivers/ksfilter/ks/ks.def [new file with mode: 0644]
drivers/parallel/CMakeLists.txt [new file with mode: 0644]
drivers/parallel/parallel/CMakeLists.txt [new file with mode: 0644]
drivers/serial/CMakeLists.txt [new file with mode: 0644]
drivers/serial/serenum/CMakeLists.txt [new file with mode: 0644]
drivers/serial/serial/CMakeLists.txt [new file with mode: 0644]
drivers/storage/ide/CMakeLists.txt
drivers/storage/ide/pciide/CMakeLists.txt [new file with mode: 0644]
drivers/storage/ide/pciidex/CMakeLists.txt [new file with mode: 0644]
drivers/usb/CMakeLists.txt [new file with mode: 0644]
drivers/usb/nt4compat/CMakeLists.txt [new file with mode: 0644]
drivers/usb/nt4compat/usbdriver/CMakeLists.txt [new file with mode: 0644]
drivers/usb/usbd/CMakeLists.txt [new file with mode: 0644]
drivers/video/displays/CMakeLists.txt
drivers/video/displays/framebuf/CMakeLists.txt [new file with mode: 0644]
drivers/video/displays/framebuf_new/CMakeLists.txt [new file with mode: 0644]
drivers/wdm/audio/backpln/CMakeLists.txt
drivers/wdm/audio/backpln/portcls/CMakeLists.txt [new file with mode: 0644]
importlibs/libpciidex.a [new file with mode: 0644]

index df453c6..91c6f1d 100644 (file)
@@ -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 (file)
index 0000000..c3bfa78
--- /dev/null
@@ -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 (file)
index 0000000..a367b47
--- /dev/null
@@ -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)
index 3f1db6f..3eff666 100644 (file)
@@ -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)
index 7cf4613..b0cb558 100644 (file)
@@ -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 (file)
index 0000000..ba8187e
--- /dev/null
@@ -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 (file)
index 0000000..59082c4
--- /dev/null
@@ -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 (file)
index 0000000..6a8aaa1
--- /dev/null
@@ -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 (file)
index 0000000..7faa971
--- /dev/null
@@ -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 (file)
index 0000000..4d96f67
--- /dev/null
@@ -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 (file)
index 0000000..3efe604
--- /dev/null
@@ -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 (file)
index 0000000..1175630
--- /dev/null
@@ -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 (file)
index 0000000..5db43b9
--- /dev/null
@@ -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 (file)
index 0000000..d0c689b
--- /dev/null
@@ -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 (file)
index 0000000..69953f4
--- /dev/null
@@ -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)
index ef65b00..f49c4ce 100644 (file)
@@ -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 (file)
index 0000000..0bb0953
--- /dev/null
@@ -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 (file)
index 0000000..b3e3538
--- /dev/null
@@ -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 (file)
index 0000000..156dcd2
--- /dev/null
@@ -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 (file)
index 0000000..861e293
--- /dev/null
@@ -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 (file)
index 0000000..cad6e39
--- /dev/null
@@ -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 (file)
index 0000000..02b91ad
--- /dev/null
@@ -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)
index 3b26535..ff7fd43 100644 (file)
@@ -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 (file)
index 0000000..10b11d2
--- /dev/null
@@ -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 (file)
index 0000000..2dd63d1
--- /dev/null
@@ -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/portcls/CMakeLists.txt b/drivers/wdm/audio/backpln/portcls/CMakeLists.txt
new file mode 100644 (file)
index 0000000..169f68c
--- /dev/null
@@ -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 (file)
index 0000000..3b49aac
Binary files /dev/null and b/importlibs/libpciidex.a differ