diff --git a/reactos/INSTALL b/reactos/INSTALL index b1c3ae6817c..2964e7f5600 100644 --- a/reactos/INSTALL +++ b/reactos/INSTALL @@ -7,67 +7,72 @@ ReactOS from http://www.reactos.com. 2. Building ReactOS -To build from Windows run 'make' (wihout the quotes) from the top directory. -To build from unix, edit rules.mak and change the PREFIX variable to the -correct value for your cross-compiler. Run 'export HOST=mingw32-linux' to -tell the ReactOS build system that it is building ReactOS on a linux machine. -Now run 'make'. +2.1 Building the binaries + +To build ReactOS run 'make' (wihout the quotes) if you are building on Linux +or 'mingw32-make' if you are building on Windows (or ReactOS) from the top +directory. + + +2.2 Building a bootable CD image + +To build a bootable CD image run 'make bootcd' (wihout the quotes) if you are +building on Linux or 'mingw32-make bootcd' if you are building on Windows (or +ReactOS) from the top directory. This will create a CD image with a filename, +ReactOS.iso, in the top directory. 3. Installation -The system can only be installed on the first partition on the first harddisk. -The partition must be formatted as FAT16 or FAT32. The system can only be -started from DOS and not from a Windows DOS-prompt. +ReactOS can only be installed on a machine that has a FAT16 or FAT32 partition +as the active (bootable) partition. The partition on which ReactOS is to be +installed (which may or may not be the bootable partition) must also be +formatted as FAT16 or FAT32. ReactOS Setup can format the partitions if +needed. -ReactOS can be installed from the source distribution or from the binary +ReactOS can be installed from the source distribution or from the bootable CD distribution. The two ways to install ReactOS are explained below. 3.1 Installation from sources -To install ReactOS after building it, type 'make install'. This will create -the directory 'reactos' in the top directory. Copy this directory to the root -of your first partition on your first harddisk. This is usually c:\ on a -Windows machine. +If you don't have an existing ReactOS installation you want to upgrade, then +build a bootable CD as described above. Burn the CD image, boot from it, and +follow the instructions to install ReactOS. -If you don't want to copy the files manually every time you run a 'make install', -you can specify the directory where the files are to be copied to during -installation. +If you have an existing ReactOS installation you want to upgrade, then to +install ReactOS after building it, type 'make install' or +'mingw32-make install'. This will create the directory 'reactos' in the top +directory. Copy the contents of this directory over the existing installation. -In rules.mak find the variable INSTALL_DIR and change the assigned value to the -name of the directory where the files are to be copied to. If you are using -Windows this could be: +If you don't want to copy the files manually every time you run a +'make install' or 'mingw32-make install', then you can specify the directory +where the files are to be copied to during installation. - INSTALL_DIR = c:\reactos +Set the ROS_INSTALL environment variable. If you are on Windows this could be +done by: -If you are on linux this could be: + set ROS_INSTALL=c:\reactos - INSTALL_DIR = /mnt/windows/reactos +If you are on Linux this could be done by: -Save the changes to rules.mak and run 'make install' to install the files to -the new location. If you don't want to change rules.mak, you can specify the -installtion directory when invoking make. Run -'make INSTALL_DIR=c:\reactos install' to install to c:\reactos. + export ROS_INSTALL=/mnt/windows/reactos + +Now run 'make install' or 'mingw32-make install' to install the files to the +new location. -3.2 Installation from binany distribution +3.2 Installation from bootable CD distribution -To install ReactOS from the binary distribution, extract the archive contents -to c:\reactos. Remember to extract the files with full paths. - - -4. Booting ReactOS - -Startup in DOS mode. 'cd' to c:\reactos and type 'boot' and press . -A simple shell is started where you can use simple commands like 'cd' and 'dir'. +To install ReactOS from the bootable CD distribution, extract the archive +contents. Then burn the CD image, boot from it, and follow instructions. 5. Help If you run into problems or have suggestions for making ReactOS better, please -surf to the address below and subscribe to one or more of the mailing lists. +visit the address below and subscribe to one or more of the mailing lists. -http://www.reactos.com/index.php?tab=discussion§ion=lists +http://www.reactos.com/en/content/view/full/66 ReactOS Development Team diff --git a/reactos/Jamfile b/reactos/Jamfile deleted file mode 100644 index 373f9c671f3..00000000000 --- a/reactos/Jamfile +++ /dev/null @@ -1,5 +0,0 @@ -# Main jamfile for ReactOS - -SubDir ROS_TOP ; - -SubInclude ROS_TOP Lib ; diff --git a/reactos/Jamrules b/reactos/Jamrules deleted file mode 100644 index c5128083ef1..00000000000 --- a/reactos/Jamrules +++ /dev/null @@ -1,54 +0,0 @@ -# customization for ReactOS goes here - -# The SharedLibrary and SharedLibraryFromObjects rules were -# borrowed from here: -# http://www.differentpla.net/~roger/devel/jam/tutorial/shared_lib/index.html - -SUFSHR = .dll ; -RM = rm ; # rm comes with MinGW, and the default del doesn't work in some cases - -rule SharedLibrary -{ - SharedLibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ; - Objects $(>) ; -} - -rule SharedLibraryFromObjects -{ - local _s _t ; - - # Add grist to file names - # Add suffix to dll - - _s = [ FGristFiles $(>) ] ; - _t = [ FAppendSuffix $(<) : $(SUFSHR) ] ; - - if $(_t) != $(<) - { - DEPENDS $(<) : $(_t) ; - NOTFILE $(<) ; - } - - # make compiled sources a dependency of target - - DEPENDS exe : $(_t) ; - DEPENDS $(_t) : $(_s) ; - MakeLocate $(_t) : $(LOCATE_TARGET) ; - - Clean clean : $(_t) ; - - Link $(_t) : $(_s) ; -} - -# nasm needs to know the output file first, or it doesn't -# recognize -I :( -actions As -{ - $(AS) -o $(<) $(ASFLAGS) -I$(HDRS) $(>) -} - -AS = nasm ; - -# why isn't DEFINES working? :( -#DEFINES += _M_IX86 ; -CCFLAGS += -D_M_IX86 ; diff --git a/reactos/Makefile b/reactos/Makefile index 042e73b8295..e905b4f6fc7 100644 --- a/reactos/Makefile +++ b/reactos/Makefile @@ -1,1089 +1,258 @@ -# $Id$ +# Accepted environment variables: # -# Global makefile +# ROS_PREFIX +# This variable specifies the prefix of the MinGW installation. On Windows +# a prefix is usually not needed, but on linux it is usually "mingw32-". If +# not present and no executable named "gcc" can be found, then the prefix is +# assumed to be "mingw32-". # +# ROS_INTERMEDIATE +# This variable controls where to put intermediate files. Intermediate +# files are generated files that are needed to generate the final +# output files. Examples of intermediate files include *.o, *.a, and +# *.coff. N.B. Don't put a path separator at the end. The variable +# defaults to .\obj-i386. +# +# ROS_OUTPUT +# This variable controls where to put output files. Output files are +# generated files that makes up the result of the build process. +# Examples of output files include *.exe, *.dll, and *.sys. N.B. Don't +# put a path separator at the end. The variable defaults to .\output-i386. +# +# ROS_TEMPORARY +# This variable controls where to put temporary files. Temporary files +# are (usually small) generated files that are needed to generate the +# intermediate or final output files. Examples of temporary files include +# *.rci (preprocessed .rc files for wrc), *.tmp, and *.exp. N.B. Don't put +# a path separator at the end. The variable defaults to the current +# directory. +# +# ROS_INSTALL +# This variable controls where to install output files to when using +# 'make install'. N.B. Don't put a path separator at the end. The variable +# defaults to .\reactos. +# +# ROS_BUILDMAP +# This variable controls if map files are to be generated for executable +# output files. Map files have the extension .map. The value can be either +# full (to build map files with assembly code), yes (to build map files +# without source code) or no (to not build any map files). The variable +# defaults to no. +# +# ROS_BUILDNOSTRIP +# This variable controls if non-symbol-stripped versions are to be built +# of executable output files. Non-symbol-stripped executable output files +# have .nostrip added to the filename just before the extension. The value +# can be either yes (to build non-symbol-stripped versions of executable +# output files) or no (to not build non-symbol-stripped versions of +# executable output files). The variable defaults to no. +# +# ROS_RBUILDFLAGS +# Pass parameters to rbuild. -PATH_TO_TOP = . +.PHONY: all +.PHONY: clean +all: makefile.auto -include $(PATH_TO_TOP)/rules.mak -include $(PATH_TO_TOP)/config +.SUFFIXES: -# -# Define to build ReactOS external targets -# -ifeq ($(ROS_BUILD_EXT),) -ROS_BUILD_EXT = no +ifeq ($(HOST),) +ifeq ($(word 1,$(shell gcc -dumpmachine)),mingw32) +HOST=mingw32-windows else -ROS_BUILD_EXT = yes +HOST=mingw32-linux +endif endif -ifneq ($(MINIMALDEPENDENCIES),no) -IMPLIB = +# Default to half-verbose mode +ifeq ($(VERBOSE),no) + Q = @ + HALFVERBOSEECHO = no + BUILDNO_QUIET = -q else -IMPLIB = implib +ifeq ($(VERBOSE),yes) + Q = + HALFVERBOSEECHO = no + BUILDNO_QUIET = +else + Q = @ + HALFVERBOSEECHO = yes + BUILDNO_QUIET = -q +endif +endif +ifeq ($(HALFVERBOSEECHO),yes) + ECHO_CP =@echo [COPY] $@ + ECHO_MKDIR =@echo [MKDIR] $@ + ECHO_BUILDNO =@echo [BUILDNO] $@ + ECHO_INVOKE =@echo [INVOKE] $< + ECHO_PCH =@echo [PCH] $@ + ECHO_CC =@echo [CC] $< + ECHO_GAS =@echo [GAS] $< + ECHO_NASM =@echo [NASM] $< + ECHO_AR =@echo [AR] $@ + ECHO_WINEBLD =@echo [WINEBLD] $@ + ECHO_WRC =@echo [WRC] $@ + ECHO_WIDL =@echo [WIDL] $@ + ECHO_BIN2RES =@echo [BIN2RES] $< + ECHO_DLLTOOL =@echo [DLLTOOL] $@ + ECHO_LD =@echo [LD] $@ + ECHO_NM =@echo [NM] $@ + ECHO_OBJDUMP =@echo [OBJDUMP] $@ + ECHO_RBUILD =@echo [RBUILD] $@ + ECHO_RSYM =@echo [RSYM] $@ + ECHO_WMC =@echo [WMC] $@ + ECHO_NCI =@echo [NCI] $@ + ECHO_CABMAN =@echo [CABMAN] $< + ECHO_CDMAKE =@echo [CDMAKE] $@ + ECHO_MKHIVE =@echo [MKHIVE] $@ + ECHO_REGTESTS=@echo [REGTESTS] $@ + ECHO_TEST =@echo [TEST] $@ +else + ECHO_CP = + ECHO_MKDIR = + ECHO_BUILDNO = + ECHO_INVOKE = + ECHO_PCH = + ECHO_CC = + ECHO_GAS = + ECHO_NASM = + ECHO_AR = + ECHO_WINEBLD = + ECHO_WRC = + ECHO_WIDL = + ECHO_BIN2RES = + ECHO_DLLTOOL = + ECHO_LD = + ECHO_NM = + ECHO_OBJDUMP = + ECHO_RBUILD = + ECHO_RSYM = + ECHO_WMC = + ECHO_NCI = + ECHO_CABMAN = + ECHO_CDMAKE = + ECHO_MKHIVE = + ECHO_REGTESTS= + ECHO_TEST = endif -# Boot loaders -BOOT_LOADERS = freeldr -# Required to run the system -COMPONENTS = ntoskrnl - -# Hardware Abstraction Layers -# halx86 -HALS = halx86/up halx86/mp - -# Bus drivers -# acpi isapnp pci serenum -BUS = acpi isapnp pci serenum - -# Filesystem libraries -# vfatlib -LIB_FSLIB = vfatlib - -# libunicode, must be empty! -LIBUNICODE = - -# Static libraries -LIB_STATIC = string rosrtl epsapi uuid libwine zlib rtl tgetopt pseh adns dxguid strmiids crt rossym wdmguid - -# Keyboard layout libraries -DLLS_KBD = kbdda kbddv kbdes kbdfr kbdgr kbdru kbdse kbdsg kbduk kbdus - -# Control Panels -DLLS_CPL = cpl - -# Shell extensions -DLLS_SHELLEXT = shellext - -# User mode libraries -# libpcap packet epsapi -DLLS = acledit aclui advapi32 advpack cabinet cards comctl32 crtdll comdlg32 d3d8thk dbghelp expat fmifs freetype \ - gdi32 gdiplus glu32 hid imagehlp imm32 iphlpapi kernel32 lzexpand mesa32 midimap mmdrv mpr msacm msafd \ - msgina msi msimg32 msvcrt20 msvideo mswsock netapi32 ntdll ole32 oleaut32 oledlg olepro32 opengl32 \ - packet psapi riched20 richedit rpcrt4 samlib secur32 serialui setupapi shell32 shlwapi smlib smdll snmpapi \ - syssetup twain user32 userenv version wininet winmm winspool ws2help ws2_32 wsock32 wshirda dnsapi \ - urlmon shdocvw dinput dinput8 dxdiagn devenum dsound lsasrv dhcpcapi \ - $(DLLS_KBD) $(DLLS_CPL) $(DLLS_SHELLEXT) - -SUBSYS = smss win32k csrss ntvdm - -# -# Select the server(s) you want to build -# -#SERVERS = posix linux os2 -SERVERS = win32 - -# Driver support libraries -#bzip2 zlib oskittcp -DRIVERS_LIB = bzip2 oskittcp ip csq - -# Kernel mode device drivers -# Obsolete: ide -# beep blue floppy null parallel ramdrv serenum serial -DEVICE_DRIVERS = beep blue debugout null serial bootvid - -# Kernel mode input drivers -INPUT_DRIVERS = mouclass sermouse i8042prt kbdclass - -# Kernel mode file system drivers -# cdfs ext2 fs_rec ms np vfat -FS_DRIVERS = cdfs fs_rec ms np vfat mup ntfs - -# Kernel mode networking drivers -# afd ndis npf tcpip tdi wshtcpip -NET_DRIVERS = afd ndis npf tcpip tdi wshtcpip - -# Kernel mode networking device drivers -# ne2000 pcnet -NET_DEVICE_DRIVERS = ne2000 pcnet - -# Kernel mode storage drivers -# atapi cdrom class2 disk scsiport -STORAGE_DRIVERS = atapi cdrom class2 disk floppy scsiport diskdump - -# System applications -# autochk cmd format services setup usetup welcome winlogon msiexec -SYS_APPS = autochk calc cmd explorer expand format ibrowser msiexec regsvr32 \ - reporterror services setup taskmgr userinit usetup welcome vmwinst rundll32 \ - winlogon regedit winefile notepad reactos lsass dhcp sm - -# System services -SYS_SVC = rpcss eventlog umpnpmgr - -APPS = testsets utils - - -# External modules and (sub)systems for ReactOS -# rosapps posix os2 (requires c++) java (non-existant) -EXTERNALS = rosapps - -ifeq ($(ROS_BUILD_EXT),yes) -EXT_MODULES = $(EXTERNALS) -else -EXT_MODULES = +host_gcc = $(Q)gcc +host_gpp = $(Q)g++ +host_ld = $(Q)ld +host_ar = $(Q)ar +host_objcopy = $(Q)objcopy +ifeq ($(HOST),mingw32-linux) + EXEPREFIX = ./ + EXEPOSTFIX = + SEP = / + mkdir = -$(Q)mkdir -p + gcc = $(Q)mingw32-gcc + gpp = $(Q)mingw32-g++ + ld = $(Q)mingw32-ld + nm = $(Q)mingw32-nm + objdump = $(Q)mingw32-objdump + ar = $(Q)mingw32-ar + objcopy = $(Q)mingw32-objcopy + dlltool = $(Q)mingw32-dlltool + windres = $(Q)mingw32-windres + rm = $(Q)rm -f + cp = $(Q)cp + NUL = /dev/null +else # mingw32-windows + EXEPREFIX = + EXEPOSTFIX = .exe + ROS_EMPTY = + SEP = \$(ROS_EMPTY) + mkdir = -$(Q)mkdir + gcc = $(Q)gcc + gpp = $(Q)g++ + ld = $(Q)ld + nm = $(Q)nm + objdump = $(Q)objdump + ar = $(Q)ar + objcopy = $(Q)objcopy + dlltool = $(Q)dlltool + windres = $(Q)windres + rm = $(Q)del /f /q + cp = $(Q)copy /y + NUL = NUL endif -KERNEL_DRIVERS = $(DRIVERS_LIB) $(DEVICE_DRIVERS) $(INPUT_DRIVERS) $(FS_DRIVERS) \ - $(NET_DRIVERS) $(NET_DEVICE_DRIVERS) $(STORAGE_DRIVERS) VIDEO_DRIVERS USB_DRIVERS - -# Regression tests -REGTESTS = regtests - -all: bootstrap $(BOOT_LOADERS) $(COMPONENTS) $(REGTESTS) $(HALS) $(BUS) $(LIB_FSLIB) \ - $(DLLS) $(SUBSYS) $(KERNEL_DRIVERS) $(SYS_APPS) $(SYS_SVC) $(APPS) $(EXT_MODULES) - -bootstrap: dk implib iface_native - -depends: $(LIB_STATIC:%=%_depends) $(LIB_FSLIB:%=%_depends) msvcrt_depends $(DLLS:%=%_depends) \ - $(SUBSYS:%=%_depends) $(SYS_SVC:%=%_depends) \ - $(EXT_MODULES:%=%_depends) $(POSIX_LIBS:%=%_depends) - -implib: hallib $(LIB_STATIC) $(LIB_FSLIB) $(COMPONENTS:%=%_implib) $(HALS:%=%_implib) \ - $(BUS:%=%_implib) $(LIB_STATIC:%=%_implib) $(LIB_FSLIB:%=%_implib) \ - msvcrt_implib $(DLLS:%=%_implib) $(KERNEL_DRIVERS:%=%_implib) \ - $(SUBSYS:%=%_implib) $(SYS_APPS:%=%_implib) $(SYS_SVC:%=%_implib) \ - $(EXT_MODULES:%=%_implib) $(REGTESTS:%=%_implib) - -test: $(BOOT_LOADERS:%=%_test) $(COMPONENTS:%=%_test) $(HALS:%=%_test) $(BUS:%=%_test) \ - $(LIB_STATIC:%=%_test) $(LIB_FSLIB:%=%_test) msvcrt_test $(DLLS:%=%_test) \ - $(KERNEL_DRIVERS:%=%_test) $(SUBSYS:%=%_test) \ - $(SYS_SVC:%=%_test) $(EXT_MODULES:%=%_test) - -clean: tools dk_clean iface_native_clean hallib_clean \ - $(BOOT_LOADERS:%=%_clean) $(HALS:%=%_clean) $(COMPONENTS:%=%_clean) \ - $(BUS:%=%_clean) $(LIB_STATIC:%=%_clean) $(LIB_FSLIB:%=%_clean) \ - msvcrt_clean $(DLLS:%=%_clean) $(KERNEL_DRIVERS:%=%_clean) \ - $(SUBSYS:%=%_clean) $(SYS_APPS:%=%_clean) $(SYS_SVC:%=%_clean) \ - $(NET_APPS:%=%_clean) $(APPS:%=%_clean) $(EXT_MODULES:%=%_clean) \ - $(REGTESTS:%=%_clean) clean_after tools_clean - -clean_after: - $(HALFVERBOSEECHO) [RM] /include/roscfg.h - $(RM) $(PATH_TO_TOP)/include/roscfg.h - -fastinstall: tools install_dirs install_before $(COMPONENTS:%=%_install) $(HALS:%=%_install) \ - $(BUS:%=%_install) $(LIB_STATIC:%=%_install) $(LIB_FSLIB:%=%_install) \ - msvcrt_install $(DLLS:%=%_install) $(KERNEL_DRIVERS:%=%_install) \ - $(SUBSYS:%=%_install) $(SYS_APPS:%=%_install) $(SYS_SVC:%=%_install) \ - $(APPS:%=%_install) $(EXT_MODULES:%=%_install) $(REGTESTS:%=%_install) -install: fastinstall registry - -FREELDR_DIR = boot/freeldr - -bootcd_directory_layout: - $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR) - $(RMKDIR) $(BOOTCD_DIR) - $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/bootdisk - $(RMKDIR) $(BOOTCD_DIR)/bootdisk - $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/loader - $(RMKDIR) $(BOOTCD_DIR)/loader - $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/reactos - $(RMKDIR) $(BOOTCD_DIR)/reactos - $(HALFVERBOSEECHO) [RMKDIR] $(BOOTCD_DIR)/reactos/system32 - $(RMKDIR) $(BOOTCD_DIR)/reactos/system32 - -bootcd_bootstrap_files: $(BOOT_LOADERS:%=%_bootcd) $(COMPONENTS:%=%_bootcd) \ - $(HALS:%=%_bootcd) $(BUS:%=%_bootcd) $(LIB_STATIC:%=%_bootcd) \ - $(LIB_FSLIB:%=%_bootcd) msvcrt_bootcd $(DLLS:%=%_bootcd) \ - $(KERNEL_DRIVERS:%=%_bootcd) $(SUBSYS:%=%_bootcd) $(SYS_APPS:%=%_bootcd) - -bootcd_install_before: - $(HALFVERBOSEECHO) [RLINE] bootdata/autorun.inf to $(BOOTCD_DIR)/autorun.inf - $(RLINE) bootdata/autorun.inf $(BOOTCD_DIR)/autorun.inf - $(HALFVERBOSEECHO) [RLINE] bootdata/readme.txt to $(BOOTCD_DIR)/readme.txt - $(RLINE) bootdata/readme.txt $(BOOTCD_DIR)/readme.txt - $(HALFVERBOSEECHO) [RLINE] bootdata/hivecls.inf to $(BOOTCD_DIR)/reactos/hivecls.inf - $(RLINE) bootdata/hivecls.inf $(BOOTCD_DIR)/reactos/hivecls.inf - $(HALFVERBOSEECHO) [RLINE] bootdata/hivedef.inf to $(BOOTCD_DIR)/reactos/hivedef.inf - $(RLINE) bootdata/hivedef.inf $(BOOTCD_DIR)/reactos/hivedef.inf - $(HALFVERBOSEECHO) [RLINE] bootdata/hivesft.inf to $(BOOTCD_DIR)/reactos/hivesft.inf - $(RLINE) bootdata/hivesft.inf $(BOOTCD_DIR)/reactos/hivesft.inf - $(HALFVERBOSEECHO) [RLINE] bootdata/hivesys.inf to $(BOOTCD_DIR)/reactos/hivesys.inf - $(RLINE) bootdata/hivesys.inf $(BOOTCD_DIR)/reactos/hivesys.inf - $(HALFVERBOSEECHO) [RLINE] bootdata/txtsetup.sif to $(BOOTCD_DIR)/reactos/txtsetup.sif - $(RLINE) bootdata/txtsetup.sif $(BOOTCD_DIR)/reactos/txtsetup.sif - $(HALFVERBOSEECHO) [COPY] bootdata/icon.ico to $(BOOTCD_DIR)/icon.ico - $(CP) bootdata/icon.ico $(BOOTCD_DIR)/icon.ico - $(HALFVERBOSEECHO) [COPY] subsys/system/welcome/welcome.exe to $(BOOTCD_DIR)/reactos/welcome.exe - $(CP) subsys/system/welcome/welcome.exe $(BOOTCD_DIR)/reactos/welcome.exe - $(HALFVERBOSEECHO) [COPY] subsys/system/reactos/reactos.exe to $(BOOTCD_DIR)/reactos/reactos.exe - $(CP) subsys/system/reactos/reactos.exe $(BOOTCD_DIR)/reactos/reactos.exe - $(HALFVERBOSEECHO) [COPY] media/nls/c_1252.nls to $(BOOTCD_DIR)/reactos/c_1252.nls - $(CP) media/nls/c_1252.nls $(BOOTCD_DIR)/reactos/c_1252.nls - $(HALFVERBOSEECHO) [COPY] media/nls/c_437.nls to $(BOOTCD_DIR)/reactos/c_437.nls - $(CP) media/nls/c_437.nls $(BOOTCD_DIR)/reactos/c_437.nls - $(HALFVERBOSEECHO) [COPY] media/nls/l_intl.nls to $(BOOTCD_DIR)/reactos/l_intl.nls - $(CP) media/nls/l_intl.nls $(BOOTCD_DIR)/reactos/l_intl.nls - $(HALFVERBOSEECHO) [COPY] media/drivers/etc/services to $(BOOTCD_DIR)/reactos/services - $(CP) media/drivers/etc/services $(BOOTCD_DIR)/reactos/services - $(HALFVERBOSEECHO) [COPY] media/drivers/etc/KDBinit to $(BOOTCD_DIR)/reactos/KDBinit - $(CP) media/drivers/etc/KDBinit $(BOOTCD_DIR)/reactos/KDBinit - -bootcd_basic: bootcd_directory_layout bootcd_bootstrap_files bootcd_install_before - -bootcd_makecd: - $(CABMAN) /C bootdata/packages/reactos.dff /L $(BOOTCD_DIR)/reactos /I - $(CABMAN) /C bootdata/packages/reactos.dff /RC $(BOOTCD_DIR)/reactos/reactos.inf /L $(BOOTCD_DIR)/reactos /N - - $(RM) $(BOOTCD_DIR)/reactos/reactos.inf - $(HALFVERBOSEECHO) [CDMAKE] ReactOS.iso - $(CDMAKE) -v -m -b $(BOOTCD_DIR)/../isoboot.bin $(BOOTCD_DIR) REACTOS ReactOS.iso - -ubootcd_unattend: - $(HALFVERBOSEECHO) [COPY] bootdata/unattend.inf to $(BOOTCD_DIR)/reactos/unattend.inf - $(CP) bootdata/unattend.inf $(BOOTCD_DIR)/reactos/unattend.inf - -livecd_directory_layout: - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR) - $(RMKDIR) $(LIVECD_DIR) - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/loader - $(RMKDIR) $(LIVECD_DIR)/loader - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/reactos - $(RMKDIR) $(LIVECD_DIR)/reactos - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/All\ Users/Desktop - $(RMKDIR) $(LIVECD_DIR)/Profiles/All\ Users/Desktop - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/Default\ User/Desktop - $(RMKDIR) $(LIVECD_DIR)/Profiles/Default\ User/Desktop - $(HALFVERBOSEECHO) [RMKDIR] $(LIVECD_DIR)/Profiles/Default\ User/My\ Documents - $(RMKDIR) $(LIVECD_DIR)/Profiles/Default\ User/My\ Documents - $(HALFVERBOSEECHO) [COPY] ${FREELDR_DIR}/bootsect/isoboot.bin to ${LIVECD_DIR}/../isoboot.bin - $(CP) ${FREELDR_DIR}/bootsect/isoboot.bin ${LIVECD_DIR}/../isoboot.bin - $(HALFVERBOSEECHO) [COPY] ${FREELDR_DIR}/freeldr/freeldr.sys to ${LIVECD_DIR}/loader/setupldr.sys - $(CP) ${FREELDR_DIR}/freeldr/freeldr.sys ${LIVECD_DIR}/loader/setupldr.sys - $(HALFVERBOSEECHO) [RLINE] bootdata/livecd.ini to $(LIVECD_DIR)/freeldr.ini - $(RLINE) bootdata/livecd.ini $(LIVECD_DIR)/freeldr.ini - -livecd_bootstrap_files: - $(MAKE) LIVECD_INSTALL=yes fastinstall - -livecd_install_before: - $(MKHIVE) bootdata $(LIVECD_DIR)/reactos/system32/config bootdata/livecd.inf bootdata/hiveinst.inf - -livecd_basic: livecd_directory_layout livecd_bootstrap_files livecd_install_before - -livecd_makecd: - $(HALFVERBOSEECHO) [CDMAKE] roslive.iso - $(CDMAKE) -m -j -b $(LIVECD_DIR)/../isoboot.bin $(LIVECD_DIR) REACTOS roslive.iso - -bootcd: bootcd_basic bootcd_makecd - -ubootcd: bootcd_basic ubootcd_unattend bootcd_makecd - -livecd: livecd_basic livecd_makecd - -registry: tools - $(MKHIVE) bootdata $(INSTALL_DIR)/system32/config bootdata/hiveinst.inf - -.PHONY: all bootstrap depends implib test clean clean_before install bootcd_directory_layout \ -bootcd_bootstrap_files bootcd_install_before bootcd_basic bootcd_makecd ubootcd_unattend bootcd - - -# -# Boot Loaders -# -$(BOOT_LOADERS): %: - $(MAKE) -C boot/$* - -$(BOOT_LOADERS:%=%_test): %_test: - $(MAKE) -C boot/$* test - -$(BOOT_LOADERS:%=%_clean): %_clean: - $(MAKE) -C boot/$* clean - -$(BOOT_LOADERS:%=%_bootcd): %_bootcd: - $(MAKE) -C boot/$* bootcd - -.PHONY: $(BOOT_LOADERS) $(BOOT_LOADERS:%=%_test) $(BOOT_LOADERS:%=%_clean) \ - $(BOOT_LOADERS:%=%_bootcd) - -$(COMPONENTS): dk - -# -# System Applications -# -$(SYS_APPS): %: $(IMPLIB) - $(MAKE) -C subsys/system/$* - -$(SYS_APPS:%=%_implib): %_implib: dk - $(MAKE) --silent -C subsys/system/$* implib - -$(SYS_APPS:%=%_test): %_test: - $(MAKE) -C subsys/system/$* test - -$(SYS_APPS:%=%_clean): %_clean: - $(MAKE) -C subsys/system/$* clean - -$(SYS_APPS:%=%_install): %_install: - $(MAKE) -C subsys/system/$* install - -$(SYS_APPS:%=%_bootcd): %_bootcd: - $(MAKE) -C subsys/system/$* bootcd - -.PHONY: $(SYS_APPS) $(SYS_APPS:%=%_implib) $(SYS_APPS:%=%_test) \ - $(SYS_APPS:%=%_clean) $(SYS_APPS:%=%_install) $(SYS_APPS:%=%_bootcd) - -# -# System Services -# -$(SYS_SVC): %: $(IMPLIB) - $(MAKE) -C services/$* - -$(SYS_SVC:%=%_depends): %_depends: - $(MAKE) -C services/$* depends - -$(SYS_SVC:%=%_implib): %_implib: dk - $(MAKE) --silent -C services/$* implib - -$(SYS_SVC:%=%_test): %_test: - $(MAKE) -C services/$* test - -$(SYS_SVC:%=%_clean): %_clean: - $(MAKE) -C services/$* clean - -$(SYS_SVC:%=%_install): %_install: - $(MAKE) -C services/$* install - -.PHONY: $(SYS_SVC) $(SYS_SVC:%=%_depends) $(SYS_SVC:%=%_implib) \ - $(SYS_SVC:%=%_test) $(SYS_SVC:%=%_clean) $(SYS_SVC:%=%_install) - - -# -# Applications -# -# -# Extra (optional system) Applications -# -$(APPS): %: $(IMPLIB) - $(MAKE) -C apps/$* - -# Not needed -# $(APPS:%=%_implib): %_implib: dk -# $(MAKE) --silent -C apps/$* implib - -$(APPS:%=%_test): %_test: - $(MAKE) -C apps/$* test - -$(APPS:%=%_clean): %_clean: - $(MAKE) -C apps/$* clean - -$(APPS:%=%_install): %_install: - $(MAKE) -C apps/$* install - -.PHONY: $(APPS) $(APPS:%=%_test) $(APPS:%=%_clean) $(APPS:%=%_install) - - -# -# External ports and subsystem personalities -# -$(EXTERNALS): %: - $(MAKE) -C $(ROOT_PATH)/$* - -$(EXTERNALS:%=%_depends): %_depends: - $(MAKE) -C $(ROOT_PATH)/$* depends - -$(EXTERNALS:%=%_implib): %_implib: dk - $(MAKE) --silent -C $(ROOT_PATH)/$* implib - -$(EXTERNALS:%=%_clean): %_clean: - $(MAKE) -C $(ROOT_PATH)/$* clean - -$(EXTERNALS:%=%_install): %_install: - $(MAKE) -C $(ROOT_PATH)/$* install - -.PHONY: $(EXTERNALS) $(EXTERNALS:%=%_depends) $(EXTERNALS:%=%_implib) $(EXTERNALS:%=%_clean) $(EXTERNALS:%=%_install) - - -# -# Tools -# -tools: - $(MAKE) --silent -C tools - -tools_implib: - - -tools_test: - - -tools_clean: - $(MAKE) -C tools clean - -tools_install: - -.PHONY: tools tools_implib tools_test tools_clean tools_install - - -# -# Developer Kits -# -dk: tools - @$(RMKDIR) $(DK_PATH) - @$(RMKDIR) $(DDK_PATH) - @$(RMKDIR) $(DDK_PATH_LIB) - @$(RMKDIR) $(DDK_PATH_INC) - @$(RMKDIR) $(SDK_PATH) - @$(RMKDIR) $(SDK_PATH_LIB) - @$(RMKDIR) $(SDK_PATH_INC) - @$(RMKDIR) $(XDK_PATH) - @$(RMKDIR) $(XDK_PATH_LIB) -# @$(RMKDIR) $(XDK_PATH_INC) - -dk_implib: - -# WARNING! Be very sure that there are no important files -# in these directories before cleaning them!!! -dk_clean: - $(HALFVERBOSEECHO) [RM] $(DDK_PATH_LIB)/*.a - $(RM) $(DDK_PATH_LIB)/*.a -# $(HALFVERBOSEECHO) [RM] $(DDK_PATH_INC)/*.h -# $(RM) $(DDK_PATH_INC)/*.h - $(HALFVERBOSEECHO) [RMDIR] $(DDK_PATH_LIB) - $(RMDIR) $(DDK_PATH_LIB) -# $(HALFVERBOSEECHO) [RMDIR] $(DDK_PATH_INC) -# $(RMDIR) $(DDK_PATH_INC) - $(HALFVERBOSEECHO) [RM] $(SDK_PATH_LIB)/*.a - $(RM) $(SDK_PATH_LIB)/*.a -# $(HALFVERBOSEECHO) [RM] $(SDK_PATH_INC)/*.h -# $(RM) $(SDK_PATH_INC)/*.h - $(HALFVERBOSEECHO) [RMDIR] $(SDK_PATH_LIB) - $(RMDIR) $(SDK_PATH_LIB) -# $(HALFVERBOSEECHO) [RMDIR] $(SDK_PATH_INC) -# $(RMDIR) $(SDK_PATH_INC) - $(HALFVERBOSEECHO) [RM] $(XDK_PATH_LIB)/*.a - $(RM) $(XDK_PATH_LIB)/*.a -# $(HALFVERBOSEECHO) [RM] $(XDK_PATH_INC)/*.h -# $(RM) $(XDK_PATH_INC)/*.h - $(HALFVERBOSEECHO) [RMDIR] $(XDK_PATH_LIB) - $(RMDIR) $(XDK_PATH_LIB) -# $(HALFVERBOSEECHO) [RMDIR] $(XDK_PATH_INC) -# $(RMDIR) $(XDK_PATH_INC) - -dk_install: - -.PHONY: dk dk_implib dk_clean dk_install - - -# -# Interfaces -# -iface_native: - $(MAKE) --silent -C tools/nci - -iface_native_implib: - -iface_native_test: - -iface_native_clean: - $(MAKE) --silent -C tools/nci clean - -iface_native_install: - -iface_native_bootcd: - -.PHONY: iface_native iface_native_implib iface_native_test iface_native_clean \ - iface_native_install iface_native_bootcd - - -# -# Bus driver rules -# -$(BUS): %: $(IMPLIB) - $(MAKE) -C drivers/bus/$* - -$(BUS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/bus/$* implib - -$(BUS:%=%_test): %_test: - $(MAKE) -C drivers/bus/$* test - -$(BUS:%=%_clean): %_clean: - $(MAKE) -C drivers/bus/$* clean - -$(BUS:%=%_install): %_install: - $(MAKE) -C drivers/bus/$* install - -$(BUS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/bus/$* bootcd - -.PHONY: $(BUS) $(BUS:%=%_implib) $(BUS:%=%_clean) \ - $(BUS:%=%_install) $(BUS:%=%_bootcd) - - -# -# Driver support libraries rules -# -$(DRIVERS_LIB): %: $(IMPLIB) - $(MAKE) -C drivers/lib/$* - -$(DRIVERS_LIB:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/lib/$* implib - -$(DRIVERS_LIB:%=%_test): %_test: - $(MAKE) -C drivers/lib/$* test - -$(DRIVERS_LIB:%=%_clean): %_clean: - $(MAKE) -C drivers/lib/$* clean - -$(DRIVERS_LIB:%=%_install): %_install: - $(MAKE) -C drivers/lib/$* install - -$(DRIVERS_LIB:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/lib/$* bootcd - -.PHONY: $(DRIVERS_LIB) $(DRIVERS_LIB:%=%_implib) $(DRIVERS_LIB:%=%_test) \ - $(DRIVERS_LIB:%=%_clean) $(DRIVERS_LIB:%=%_install) $(DRIVERS_LIB:%=%_bootcd) - - -# -# Device driver rules -# -$(DEVICE_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/dd/$* - -$(DEVICE_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/dd/$* implib - -$(DEVICE_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/dd/$* test - -$(DEVICE_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/dd/$* clean - -$(DEVICE_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/dd/$* install - -$(DEVICE_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/dd/$* bootcd - -.PHONY: $(DEVICE_DRIVERS) $(DEVICE_DRIVERS:%=%_implib) $(DEVICE_DRIVERS:%=%_test) \ - $(DEVICE_DRIVERS:%=%_clean) $(DEVICE_DRIVERS:%=%_install) $(DEVICE_DRIVERS:%=%_bootcd) - - -# -# Video device driver rules -# -VIDEO_DRIVERS: $(IMPLIB) - $(MAKE) -C drivers/video - -VIDEO_DRIVERS_implib: dk - $(MAKE) --silent -C drivers/video implib - -VIDEO_DRIVERS_test: - $(MAKE) -C drivers/video test - -VIDEO_DRIVERS_clean: - $(MAKE) -C drivers/video clean - -VIDEO_DRIVERS_install: - $(MAKE) -C drivers/video install - -VIDEO_DRIVERS_bootcd: - $(MAKE) -C drivers/video bootcd - -.PHONY: VIDEO_DRIVERS VIDEO_DRIVERS_implib VIDEO_DRIVERS_test\ - VIDEO_DRIVERS_clean VIDEO_DRIVERS_install VIDEO_DRIVERS_bootcd - -# -# USB device driver rules -# -USB_DRIVERS: $(IMPLIB) - $(MAKE) -C drivers/usb - -USB_DRIVERS_implib: dk - $(MAKE) --silent -C drivers/usb implib - -USB_DRIVERS_test: - $(MAKE) -C drivers/usb test - -USB_DRIVERS_clean: - $(MAKE) -C drivers/usb clean - -USB_DRIVERS_install: - $(MAKE) -C drivers/usb install - -USB_DRIVERS_bootcd: - $(MAKE) -C drivers/usb bootcd - -.PHONY: USB_DRIVERS USB_DRIVERS_implib USB_DRIVERS_test\ - USB_DRIVERS_clean USB_DRIVERS_install USB_DRIVERS_bootcd - - -# -# Input driver rules -# -$(INPUT_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/input/$* - -$(INPUT_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/input/$* implib - -$(INPUT_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/input/$* test - -$(INPUT_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/input/$* clean - -$(INPUT_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/input/$* install - -$(INPUT_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/input/$* bootcd - -.PHONY: $(INPUT_DRIVERS) $(INPUT_DRIVERS:%=%_implib) $(INPUT_DRIVERS:%=%_test) \ - $(INPUT_DRIVERS:%=%_clean) $(INPUT_DRIVERS:%=%_install) $(INPUT_DRIVERS:%=%_bootcd) - -# -# Filesystem driver rules -# -$(FS_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/fs/$* - -$(FS_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/fs/$* implib - -$(FS_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/fs/$* test - -$(FS_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/fs/$* clean - -$(FS_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/fs/$* install - -$(FS_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/fs/$* bootcd - -.PHONY: $(FS_DRIVERS) $(FS_DRIVERS:%=%_implib) $(FS_DRIVERS:%=%_test) \ - $(FS_DRIVERS:%=%_clean) $(FS_DRIVERS:%=%_install) $(FS_DRIVERS:%=%_bootcd) - - -# -# Network driver rules -# -$(NET_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/net/$* - -$(NET_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/net/$* implib - -$(NET_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/net/$* test - -$(NET_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/net/$* clean - -$(NET_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/net/$* install - -$(NET_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/net/$* bootcd - -.PHONY: $(NET_DRIVERS) $(NET_DRIVERS:%=%_implib) $(NET_DRIVERS:%=%_test) \ - $(NET_DRIVERS:%=%_clean) $(NET_DRIVERS:%=%_install) $(NET_DRIVERS:%=%_bootcd) - - -# -# Network device driver rules -# -$(NET_DEVICE_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/net/dd/$* - -$(NET_DEVICE_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/net/dd/$* implib - -$(NET_DEVICE_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/net/dd/$* test - -$(NET_DEVICE_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/net/dd/$* clean - -$(NET_DEVICE_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/net/dd/$* install - -$(NET_DEVICE_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/net/dd/$* bootcd - -.PHONY: $(NET_DEVICE_DRIVERS) $(NET_DEVICE_DRIVERS:%=%_clean) \ - $(NET_DEVICE_DRIVERS:%=%_implib) $(NET_DEVICE_DRIVERS:%=%_test) \ - $(NET_DEVICE_DRIVERS:%=%_install) $(NET_DEVICE_DRIVERS:%=%_bootcd) - - -# -# storage driver rules -# -$(STORAGE_DRIVERS): %: $(IMPLIB) - $(MAKE) -C drivers/storage/$* - -$(STORAGE_DRIVERS:%=%_implib): %_implib: dk - $(MAKE) --silent -C drivers/storage/$* implib - -$(STORAGE_DRIVERS:%=%_test): %_test: - $(MAKE) -C drivers/storage/$* test - -$(STORAGE_DRIVERS:%=%_clean): %_clean: - $(MAKE) -C drivers/storage/$* clean - -$(STORAGE_DRIVERS:%=%_install): %_install: - $(MAKE) -C drivers/storage/$* install - -$(STORAGE_DRIVERS:%=%_bootcd): %_bootcd: - $(MAKE) -C drivers/storage/$* bootcd - -.PHONY: $(STORAGE_DRIVERS) $(STORAGE_DRIVERS:%=%_clean) \ - $(STORAGE_DRIVERS:%=%_implib) $(STORAGE_DRIVERS:%=%_test) \ - $(STORAGE_DRIVERS:%=%_install) $(STORAGE_DRIVERS:%=%_bootcd) - - -# -# Required system components -# -ntoskrnl: bootstrap - $(MAKE) -C ntoskrnl - -ntoskrnl_implib: dk - $(MAKE) --silent -C ntoskrnl implib - -ntoskrnl_test: - $(MAKE) -C ntoskrnl test - -ntoskrnl_clean: - $(MAKE) -C ntoskrnl clean - -ntoskrnl_install: - $(MAKE) -C ntoskrnl install - -ntoskrnl_bootcd: - $(MAKE) -C ntoskrnl bootcd - -.PHONY: ntoskrnl ntoskrnl_implib ntoskrnl_test \ - ntoskrnl_clean ntoskrnl_install ntoskrnl_bootcd - - -# -# Hardware Abstraction Layer import library -# -hallib: $(PATH_TO_TOP)/include/roscfg.h ntoskrnl_implib - $(MAKE) --silent -C hal/hal - -hallib_implib: dk ntoskrnl_implib - $(MAKE) --silent -C hal/hal implib - -hallib_test: - $(MAKE) -C hal/hal test - -hallib_clean: - $(MAKE) -C hal/hal clean - -hallib_install: - $(MAKE) -C hal/hal install - -hallib_bootcd: - $(MAKE) -C hal/hal bootcd - -.PHONY: hallib hallib_implib hallib_test hallib_clean \ - hallib_install hallib_bootcd - - -# -# Hardware Abstraction Layers -# -ifeq ($(CONFIG_SMP),1) -halx86: halx86/mp +ifneq ($(ROS_INTERMEDIATE),) + INTERMEDIATE := $(ROS_INTERMEDIATE) else -halx86: halx86/up + INTERMEDIATE := obj-i386 +endif +INTERMEDIATE_ := $(INTERMEDIATE)$(SEP) + +ifneq ($(ROS_OUTPUT),) + OUTPUT := $(ROS_OUTPUT) +else + OUTPUT := output-i386 +endif +OUTPUT_ := $(OUTPUT)$(SEP) + +ifneq ($(ROS_TEMPORARY),) + TEMPORARY := $(ROS_TEMPORARY) +else + TEMPORARY := +endif +TEMPORARY_ := $(TEMPORARY)$(SEP) + +ifneq ($(ROS_INSTALL),) + INSTALL := $(ROS_INSTALL) +else + INSTALL := reactos +endif +INSTALL_ := $(INSTALL)$(SEP) + +$(INTERMEDIATE): + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(OUTPUT): + ${mkdir} $@ endif -$(HALS): %: $(IMPLIB) - $(MAKE) -C hal/$* -$(HALS:%=%_implib): %_implib: dk - $(MAKE) --silent -C hal/$* implib - -$(HALS:%=%_test): %_test: - $(MAKE) -C hal/$* test - -$(HALS:%=%_clean): %_clean: - $(MAKE) -C hal/$* clean - -$(HALS:%=%_install): %_install: - $(MAKE) -C hal/$* install - -$(HALS:%=%_bootcd): %_bootcd: - $(MAKE) -C hal/$* bootcd - -.PHONY: $(HALS) $(HALS:%=%_implib) $(HALS:%=%_test) \ - $(HALS:%=%_clean) $(HALS:%=%_install) $(HALS:%=%_bootcd) - - -# -# File system libraries -# -$(LIB_FSLIB): %: dk - $(MAKE) -C lib/fslib/$* - -$(LIB_FSLIB:%=%_depends): %_depends: - $(MAKE) -C lib/fslib/$* depends - -$(LIB_FSLIB:%=%_implib): %_implib: dk - $(MAKE) --silent -C lib/fslib/$* implib - -$(LIB_FSLIB:%=%_test): %_test: - $(MAKE) -C lib/fslib/$* test - -$(LIB_FSLIB:%=%_clean): %_clean: - $(MAKE) -C lib/fslib/$* clean - -$(LIB_FSLIB:%=%_install): %_install: - $(MAKE) -C lib/fslib/$* install - -$(LIB_FSLIB:%=%_bootcd): %_bootcd: - $(MAKE) -C lib/fslib/$* bootcd - -.PHONY: $(LIB_FSLIB) $(LIB_FSLIB:%=%_depends) $(LIB_FSLIB:%=%_implib) \ - $(LIB_FSLIB:%=%_test) $(LIB_FSLIB:%=%_clean) \ - $(LIB_FSLIB:%=%_install) $(LIB_FSLIB:%=%_bootcd) - - -# -# Static libraries -# -$(LIB_STATIC): %: dk - $(MAKE) --silent -C lib/$* - -$(LIB_STATIC:%=%_depends): %_depends: - $(MAKE) -C lib/string depends - -$(LIB_STATIC:%=%_implib): %_implib: dk - $(MAKE) --silent -C lib/$* implib - -$(LIB_STATIC:%=%_test): %_test: - $(MAKE) -C lib/$* test - -$(LIB_STATIC:%=%_clean): %_clean: - $(MAKE) -C lib/$* clean - -$(LIB_STATIC:%=%_install): %_install: - $(MAKE) -C lib/$* install - -$(LIB_STATIC:%=%_bootcd): %_bootcd: - $(MAKE) -C lib/$* bootcd - -.PHONY: $(LIB_STATIC) $(LIB_STATIC:%=%_depends) $(LIB_STATIC:%=%_implib) \ - $(LIB_STATIC:%=%_test) $(LIB_STATIC:%=%_clean) \ - $(LIB_STATIC:%=%_install) $(LIB_STATIC:%=%_bootcd) - - -# -# MSVCRT is seperate since CRTDLL depend on this -# -msvcrt: $(IMPLIB) - $(MAKE) -C lib/msvcrt - -msvcrt_depends: - $(MAKE) -C lib/msvcrt depends - -msvcrt_implib: dk - $(MAKE) --silent -C lib/msvcrt implib - -msvcrt_test: - $(MAKE) -C lib/msvcrt test - -msvcrt_clean: - $(MAKE) -C lib/msvcrt clean - -msvcrt_install: - $(MAKE) -C lib/msvcrt install - -msvcrt_bootcd: - $(MAKE) -C lib/msvcrt bootcd - -.PHONY: msvcrt msvcrt_depends msvcrt_implib msvcrt_test \ - msvcrt_clean msvcrt_install msvcrt_bootcd - - -# -# DLLs -# -$(DLLS): %: $(IMPLIB) msvcrt - $(MAKE) -C lib/$* - -$(DLLS:%=%_depends): %_depends: - $(MAKE) -C lib/$* depends - -$(DLLS:%=%_implib): %_implib: dk - $(MAKE) --silent -C lib/$* implib - -$(DLLS:%=%_test): %_test: - $(MAKE) -C lib/$* test - -$(DLLS:%=%_clean): %_clean: - $(MAKE) -C lib/$* clean - -$(DLLS:%=%_install): %_install: - $(MAKE) -C lib/$* install - -$(DLLS:%=%_bootcd): %_bootcd: - $(MAKE) -C lib/$* bootcd - -.PHONY: $(DLLS) $(DLLS:%=%_depends) $(DLLS:%=%_implib) $(DLLS:%=%_test) \ - $(DLLS:%=%_clean) $(DLLS:%=%_install) $(DLLS:%=%_bootcd) - - -# -# Subsystem support modules -# -$(SUBSYS): %: $(IMPLIB) - $(MAKE) -C subsys/$* - -$(SUBSYS:%=%_depends): %_depends: - $(MAKE) -C subsys/$* depends - -$(SUBSYS:%=%_implib): %_implib: dk - $(MAKE) --silent -C subsys/$* implib - -$(SUBSYS:%=%_test): %_test: - $(MAKE) -C subsys/$* test - -$(SUBSYS:%=%_clean): %_clean: - $(MAKE) -C subsys/$* clean - -$(SUBSYS:%=%_install): %_install: - $(MAKE) -C subsys/$* install - -$(SUBSYS:%=%_bootcd): %_bootcd: - $(MAKE) -C subsys/$* bootcd - -.PHONY: $(SUBSYS) $(SUBSYS:%=%_depends) $(SUBSYS:%=%_implib) $(SUBSYS:%=%_test) \ - $(SUBSYS:%=%_clean) $(SUBSYS:%=%_install) $(SUBSYS:%=%_bootcd) - -# -# Regression testsuite -# - -$(REGTESTS): %: $(IMPLIB) - $(MAKE) --silent -C regtests - -$(REGTESTS:%=%_implib): %_implib: dk - $(MAKE) --silent -C regtests implib - -$(REGTESTS:%=%_clean): %_clean: - $(MAKE) -C regtests clean - -$(REGTESTS:%=%_install): %_install: - $(MAKE) -C regtests install - -.PHONY: $(REGTESTS) $(REGTESTS:%=%_depends) $(SUBSYS:%=%_clean) $(REGTESTS:%=%_install) - - -# -# Create an installation -# - -install_clean: - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/drivers/*.* - $(RM) $(INSTALL_DIR)/system32/drivers/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/config/*.* - $(RM) $(INSTALL_DIR)/system32/config/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/system32/*.* - $(RM) $(INSTALL_DIR)/system32/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/fonts/*.* - $(RM) $(INSTALL_DIR)/media/fonts/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/media/*.* - $(RM) $(INSTALL_DIR)/media/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/inf/*.* - $(RM) $(INSTALL_DIR)/inf/*.* - $(HALFVERBOSEECHO) [RM] $(INSTALL_DIR)/bin/*.* - $(RM) $(INSTALL_DIR)/bin/*.* - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32/drivers - $(RMDIR) $(INSTALL_DIR)/system32/drivers - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32/config - $(RMDIR) $(INSTALL_DIR)/system32/config - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/system32 - $(RMDIR) $(INSTALL_DIR)/system32 - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media/fonts - $(RMDIR) $(INSTALL_DIR)/media/fonts - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/media - $(RMDIR) $(INSTALL_DIR)/media - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/inf - $(RMDIR) $(INSTALL_DIR)/inf - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR)/bin - $(RMDIR) $(INSTALL_DIR)/bin - $(HALFVERBOSEECHO) [RMDIR] $(INSTALL_DIR) - $(RMDIR) $(INSTALL_DIR) - -install_dirs: - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR) - $(RMKDIR) $(INSTALL_DIR) - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/bin - $(RMKDIR) $(INSTALL_DIR)/bin - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/inf - $(RMKDIR) $(INSTALL_DIR)/inf - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/media - $(RMKDIR) $(INSTALL_DIR)/media - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/media/fonts - $(RMKDIR) $(INSTALL_DIR)/media/fonts - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32 - $(RMKDIR) $(INSTALL_DIR)/system32 - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/config - $(RMKDIR) $(INSTALL_DIR)/system32/config - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/drivers - $(RMKDIR) $(INSTALL_DIR)/system32/drivers - $(HALFVERBOSEECHO) [RMKDIR] $(INSTALL_DIR)/system32/drivers/etc - $(RMKDIR) $(INSTALL_DIR)/system32/drivers/etc - -install_before: - $(HALFVERBOSEECHO) [INSTALL] media/inf to $(INSTALL_DIR)/inf - $(CP) media/inf $(INSTALL_DIR)/inf - $(HALFVERBOSEECHO) [INSTALL] media/fonts to $(INSTALL_DIR)/media/fonts - $(CP) media/fonts $(INSTALL_DIR)/media/fonts - $(HALFVERBOSEECHO) [INSTALL] media/nls to $(INSTALL_DIR)/system32 - $(CP) media/nls $(INSTALL_DIR)/system32 - $(HALFVERBOSEECHO) [INSTALL] media/nls/c_1252.nls to $(INSTALL_DIR)/system32/ansi.nls - $(CP) media/nls/c_1252.nls $(INSTALL_DIR)/system32/ansi.nls - $(HALFVERBOSEECHO) [INSTALL] media/nls/c_437.nls to $(INSTALL_DIR)/system32/oem.nls - $(CP) media/nls/c_437.nls $(INSTALL_DIR)/system32/oem.nls - $(HALFVERBOSEECHO) [INSTALL] media/nls/l_intl.nls to $(INSTALL_DIR)/system32/casemap.nls - $(CP) media/nls/l_intl.nls $(INSTALL_DIR)/system32/casemap.nls - $(HALFVERBOSEECHO) [INSTALL] media/drivers/etc/services to $(INSTALL_DIR)/system32/drivers/etc/services - $(CP) media/drivers/etc/services $(INSTALL_DIR)/system32/drivers/etc/services - $(HALFVERBOSEECHO) [INSTALL] media/drivers/etc/KDBinit to $(INSTALL_DIR)/system32/drivers/etc/KDBinit - $(CP) media/drivers/etc/KDBinit $(INSTALL_DIR)/system32/drivers/etc/KDBinit - -.PHONY: install_clean install_dirs install_before - - -etags: - find . -name "*.[ch]" -print | etags --language=c - - - -docu: - echo generating ReactOS NTOSKRNL documentation ... - $(MAKE) -C ntoskrnl docu - - echo generating ReactOS drivers documentation ... - $(MAKE) -C drivers docu - - echo generating ReactOS NTDLL documentation ... - $(MAKE) -C lib/ntdll docu - - echo generating ReactOS Freetype documentation ... - $(MAKE) -C lib/freetype docu - - echo generating ReactOS libs documentation ... - $(MAKE) -C lib docu - - echo generating ReactOS WIN32K documentation ... - $(MAKE) -C subsys/win32k docu - - echo generating ReactOS apps+tools documentation ... - $(MAKE) -C apps docu - - echo generating ReactOS explorer documentation ... - $(MAKE) -C subsys/system/explorer full-docu - - echo generating remaining ReactOS documentation ... - doxygen Doxyfile - -.PHONY: docu - -include $(TOOLS_PATH)/config.mk +NTOSKRNL_MC = ntoskrnl$(SEP)ntoskrnl.mc +KERNEL32_MC = lib$(SEP)kernel32$(SEP)kernel32.mc +BUILDNO_H = include$(SEP)reactos$(SEP)buildno.h +BUGCODES_H = include$(SEP)reactos$(SEP)bugcodes.h +BUGCODES_RC = ntoskrnl$(SEP)bugcodes.rc +ERRCODES_H = include$(SEP)reactos$(SEP)errcodes.h +ERRCODES_RC = lib$(SEP)kernel32$(SEP)errcodes.rc + +include lib/lib.mak +include tools/tools.mak +-include makefile.auto + +PREAUTO := \ + $(BIN2RES_TARGET) \ + $(BUILDNO_H) \ + $(BUGCODES_H) \ + $(BUGCODES_RC) \ + $(ERRCODES_H) \ + $(ERRCODES_RC) \ + $(NCI_SERVICE_FILES) + +makefile.auto: $(RBUILD_TARGET) $(PREAUTO) $(XMLBUILDFILES) + $(ECHO_RBUILD) + $(Q)$(RBUILD_TARGET) $(ROS_RBUILDFLAGS) mingw + + +$(BUGCODES_H) $(BUGCODES_RC): $(WMC_TARGET) $(NTOSKRNL_MC) + $(ECHO_WMC) + $(Q)$(WMC_TARGET) -i -H $(BUGCODES_H) -o $(BUGCODES_RC) $(NTOSKRNL_MC) + +$(ERRCODES_H) $(ERRCODES_RC): $(WMC_TARGET) $(KERNEL32_MC) + $(ECHO_WMC) + $(Q)$(WMC_TARGET) -i -H $(ERRCODES_H) -o $(ERRCODES_RC) $(KERNEL32_MC) + +.PHONY: makefile_auto_clean +makefile_auto_clean: + -@$(rm) makefile.auto $(PREAUTO) 2>$(NUL) + +.PHONY: clean +clean: makefile_auto_clean diff --git a/reactos/ReactOS.xml b/reactos/ReactOS.xml new file mode 100644 index 00000000000..36141b9ef62 --- /dev/null +++ b/reactos/ReactOS.xml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + -Wno-strict-aliasing + -ftracer + -momit-leaf-frame-pointer + -mpreferred-stack-boundary=2 + + + + + + + include + w32api/include + w32api/include/ddk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/apps/directory.xml b/reactos/apps/directory.xml new file mode 100644 index 00000000000..6ba4fa51b5a --- /dev/null +++ b/reactos/apps/directory.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/apps/utils/directory.xml b/reactos/apps/utils/directory.xml new file mode 100644 index 00000000000..5fcd82ed4f2 --- /dev/null +++ b/reactos/apps/utils/directory.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/apps/utils/net/arp/arp.c b/reactos/apps/utils/net/arp/arp.c index 4468cac7ce7..19bbf0f31b3 100644 --- a/reactos/apps/utils/net/arp/arp.c +++ b/reactos/apps/utils/net/arp/arp.c @@ -87,7 +87,7 @@ int main(int argc, char *argv[]) DWORD dwUptime = SnmpSvcGetUptime(); - _tprintf(_T("SNMP uptime: %d\n"), dwUptime); + _tprintf(_T("SNMP uptime: %ld\n"), dwUptime); SnmpUtilMemFree(pCache); } else { diff --git a/reactos/apps/utils/net/arp/arp.xml b/reactos/apps/utils/net/arp/arp.xml new file mode 100644 index 00000000000..4b202031f36 --- /dev/null +++ b/reactos/apps/utils/net/arp/arp.xml @@ -0,0 +1,9 @@ + + . + + kernel32 + user32 + snmpapi + arp.c + arp.rc + diff --git a/reactos/apps/utils/net/arp/makefile b/reactos/apps/utils/net/arp/makefile deleted file mode 100644 index 3a89a09c969..00000000000 --- a/reactos/apps/utils/net/arp/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = arp - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API - -TARGET_SDKLIBS = user32.a snmpapi.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/directory.xml b/reactos/apps/utils/net/directory.xml new file mode 100644 index 00000000000..a0b63207a20 --- /dev/null +++ b/reactos/apps/utils/net/directory.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/apps/utils/net/finger/finger.c b/reactos/apps/utils/net/finger/finger.c index 2aebce5fcb7..83c661728ed 100644 --- a/reactos/apps/utils/net/finger/finger.c +++ b/reactos/apps/utils/net/finger/finger.c @@ -41,16 +41,6 @@ * Had to remove local handling. Otherwise, same as whois. */ -#ifndef lint -static char copyright[] = -"@(#) Copyright (c) 1989, 1993\n\ - The Regents of the University of California. All rights reserved.\n"; -#endif /* not lint */ - -#ifndef lint -static char sccsid[] = "@(#)finger.c 8.5 (Berkeley) 5/4/95"; -#endif /* not lint */ - /* * Finger prints out information about users. It is not portable since * certain fields (e.g. the full user name, office, and phone numbers) are diff --git a/reactos/apps/utils/net/finger/finger.xml b/reactos/apps/utils/net/finger/finger.xml new file mode 100644 index 00000000000..b675d3f4755 --- /dev/null +++ b/reactos/apps/utils/net/finger/finger.xml @@ -0,0 +1,11 @@ + + . + + kernel32 + ws2_32 + finger.c + err.c + getopt.c + net.c + finger.rc + diff --git a/reactos/apps/utils/net/finger/makefile b/reactos/apps/utils/net/finger/makefile deleted file mode 100644 index 17963674a3d..00000000000 --- a/reactos/apps/utils/net/finger/makefile +++ /dev/null @@ -1,24 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = finger - -TARGET_SDKLIBS = ws2_32.a - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32_SOCKETS - -TARGET_OBJECTS = $(TARGET_NAME).o \ - err.o \ - getopt.o \ - net.o - -TARGET_GCCLIBS = iberty - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/finger/net.c b/reactos/apps/utils/net/finger/net.c index f79894b8475..c431e44a975 100644 --- a/reactos/apps/utils/net/finger/net.c +++ b/reactos/apps/utils/net/finger/net.c @@ -33,11 +33,6 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ - -#ifndef lint -static char sccsid[] = "@(#)net.c 8.4 (Berkeley) 4/28/95"; -#endif /* not lint */ - #include #include #include "unistd.h" diff --git a/reactos/apps/utils/net/ftp/ftp.xml b/reactos/apps/utils/net/ftp/ftp.xml new file mode 100644 index 00000000000..abc7f2d65b2 --- /dev/null +++ b/reactos/apps/utils/net/ftp/ftp.xml @@ -0,0 +1,15 @@ + + . + + kernel32 + ws2_32 + iphlpapi + cmds.c + cmdtab.c + domacro.c + fake.c + ftp.c + main.c + ruserpass.c + ftp.rc + diff --git a/reactos/apps/utils/net/ftp/makefile b/reactos/apps/utils/net/ftp/makefile index ab481c2212a..cf13b01ba6a 100644 --- a/reactos/apps/utils/net/ftp/makefile +++ b/reactos/apps/utils/net/ftp/makefile @@ -1,29 +1,5 @@ -PATH_TO_TOP = ../../../.. +# This file is automatically generated. -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = ftp - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API - -TARGET_SDKLIBS = ws2_32.a iphlpapi.a -# ntdll.a - -TARGET_OBJECTS = \ - cmds.o \ - cmdtab.o \ - domacro.o \ - fake.o \ - ftp.o \ - main.o \ - ruserpass.o - -TARGET_GCCLIBS = - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk +TOP = ..\..\..\.. +DEFAULT = ftp +include $(TOP)/proxy.mak diff --git a/reactos/apps/utils/net/ipconfig/ipconfig.xml b/reactos/apps/utils/net/ipconfig/ipconfig.xml new file mode 100644 index 00000000000..f8758033522 --- /dev/null +++ b/reactos/apps/utils/net/ipconfig/ipconfig.xml @@ -0,0 +1,10 @@ + + . + + kernel32 + user32 + iphlpapi + ipconfig.c + trace.c + ipconfig.rc + diff --git a/reactos/apps/utils/net/ipconfig/makefile b/reactos/apps/utils/net/ipconfig/makefile deleted file mode 100644 index 96b16463653..00000000000 --- a/reactos/apps/utils/net/ipconfig/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = ipconfig - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API - -TARGET_SDKLIBS = user32.a iphlpapi.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/netstat/makefile b/reactos/apps/utils/net/netstat/makefile deleted file mode 100644 index 72a9cde48d5..00000000000 --- a/reactos/apps/utils/net/netstat/makefile +++ /dev/null @@ -1,22 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = netstat - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = \ - -D__USE_W32API \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 - -TARGET_SDKLIBS = user32.a snmpapi.a iphlpapi.a ws2_32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/netstat/netstat.xml b/reactos/apps/utils/net/netstat/netstat.xml new file mode 100644 index 00000000000..68a2e26614a --- /dev/null +++ b/reactos/apps/utils/net/netstat/netstat.xml @@ -0,0 +1,14 @@ + + . + + 0x600 + 0x501 + kernel32 + user32 + ws2_32 + snmpapi + iphlpapi + netstat.c + trace.c + netstat.rc + diff --git a/reactos/apps/utils/net/ping/makefile b/reactos/apps/utils/net/ping/makefile deleted file mode 100644 index 3459fc53d65..00000000000 --- a/reactos/apps/utils/net/ping/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = ping - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -D__USE_W32_SOCKETS - -TARGET_SDKLIBS = ws2_32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/ping/ping.c b/reactos/apps/utils/net/ping/ping.c index 37702a6e85f..da5182d44dc 100644 --- a/reactos/apps/utils/net/ping/ping.c +++ b/reactos/apps/utils/net/ping/ping.c @@ -113,7 +113,7 @@ VOID DisplayBuffer( UINT i; PCHAR p; - printf("Buffer (0x%X) Size (0x%X).\n", Buffer, Size); + printf("Buffer (0x%p) Size (0x%lX).\n", Buffer, Size); p = (PCHAR)Buffer; for (i = 0; i < Size; i++) { @@ -386,7 +386,6 @@ VOID QueryTime(PLARGE_INTEGER Time) VOID TimeToMsString(LPSTR String, LARGE_INTEGER Time) { - UINT i, Length; CHAR Convstr[40]; LARGE_INTEGER LargeTime; diff --git a/reactos/apps/utils/net/ping/ping.xml b/reactos/apps/utils/net/ping/ping.xml new file mode 100644 index 00000000000..c604abd4f7b --- /dev/null +++ b/reactos/apps/utils/net/ping/ping.xml @@ -0,0 +1,11 @@ + + . + + + 0x600 + 0x501 + kernel32 + ws2_32 + ping.c + ping.rc + diff --git a/reactos/apps/utils/net/route/makefile b/reactos/apps/utils/net/route/makefile deleted file mode 100644 index e7c5e4da2a5..00000000000 --- a/reactos/apps/utils/net/route/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = route - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ws2_32.a iphlpapi.a ntdll.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -D__USE_W32API - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/route/route.c b/reactos/apps/utils/net/route/route.c index 048db9f4b06..67c48384b30 100644 --- a/reactos/apps/utils/net/route/route.c +++ b/reactos/apps/utils/net/route/route.c @@ -35,8 +35,7 @@ int print_routes() { PMIB_IPFORWARDTABLE IpForwardTable; DWORD Error; ULONG Size = 0; - char Destination[IPBUF], Gateway[IPBUF], Netmask[IPBUF], - Index[IPBUF], Metric[IPBUF]; + char Destination[IPBUF], Gateway[IPBUF], Netmask[IPBUF]; int i; if( (Error = GetIpForwardTable( NULL, &Size, TRUE )) == @@ -63,7 +62,7 @@ int print_routes() { inet_ntoa( IN_ADDR_OF(IpForwardTable->table[i]. dwForwardNextHop) ) ); - printf( "%-16s%-16s%-16s%-10d%-10d\n", + printf( "%-16s%-16s%-16s%-10ld%-10ld\n", Destination, Netmask, Gateway, diff --git a/reactos/apps/utils/net/route/route.xml b/reactos/apps/utils/net/route/route.xml new file mode 100644 index 00000000000..8d329349275 --- /dev/null +++ b/reactos/apps/utils/net/route/route.xml @@ -0,0 +1,9 @@ + + . + + kernel32 + ws2_32 + iphlpapi + route.c + route.rc + diff --git a/reactos/apps/utils/net/telnet/Makefile b/reactos/apps/utils/net/telnet/Makefile deleted file mode 100644 index 8286c041204..00000000000 --- a/reactos/apps/utils/net/telnet/Makefile +++ /dev/null @@ -1,41 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = telnet - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ws2_32.a - -TARGET_CPPFLAGS = -D__REACTOS__ -D__USE_W32API -Wall - -TARGET_GCCLIBS = stdc++ - -TARGET_OBJECTS = \ - src/ansiprsr.o \ - src/keytrans.o \ - src/tcharmap.o \ - src/tconsole.o \ - src/tkeydef.o \ - src/tkeymap.o \ - src/tmapldr.o \ - src/tmouse.o \ - src/tnclass.o \ - src/tnclip.o \ - src/tncon.o \ - src/tnconfig.o \ - src/tnerror.o \ - src/tnetwork.o \ - src/tnmain.o \ - src/tnmisc.o \ - src/tscript.o \ - src/tscroll.o \ - src/ttelhndl.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/telnet/telnet.xml b/reactos/apps/utils/net/telnet/telnet.xml new file mode 100644 index 00000000000..cfef4319d03 --- /dev/null +++ b/reactos/apps/utils/net/telnet/telnet.xml @@ -0,0 +1,29 @@ + + . + + + kernel32 + ws2_32 + + ansiprsr.cpp + keytrans.cpp + tcharmap.cpp + tconsole.cpp + tkeydef.cpp + tkeymap.cpp + tmapldr.cpp + tmouse.cpp + tnclass.cpp + tnclip.cpp + tncon.cpp + tnconfig.cpp + tnerror.cpp + tnetwork.cpp + tnmain.cpp + tnmisc.cpp + tscript.cpp + tscroll.cpp + ttelhndl.cpp + + telnet.rc + diff --git a/reactos/apps/utils/net/whois/makefile b/reactos/apps/utils/net/whois/makefile deleted file mode 100644 index b6c5bc02b9a..00000000000 --- a/reactos/apps/utils/net/whois/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = whois - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ws2_32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_GCCLIBS = iberty - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/apps/utils/net/whois/whois.c b/reactos/apps/utils/net/whois/whois.c index 6f923a211b8..0712161e336 100644 --- a/reactos/apps/utils/net/whois/whois.c +++ b/reactos/apps/utils/net/whois/whois.c @@ -36,16 +36,6 @@ * more convenient fdopen()/fprintf() to send()/recv(). */ -#ifndef lint -static char copyright[] = -"@(#) Copyright (c) 1980, 1993\n\ - The Regents of the University of California. All rights reserved.\n"; -#endif /* not lint */ - -#ifndef lint -static char sccsid[] = "@(#)whois.c 8.1 (Berkeley) 6/6/93"; -#endif /* not lint */ - #include #include /* #include */ @@ -161,6 +151,7 @@ int main(int argc, char **argv) putchar(ch); leave(0); + return 0; } void usage() diff --git a/reactos/apps/utils/net/whois/whois.xml b/reactos/apps/utils/net/whois/whois.xml new file mode 100644 index 00000000000..fb3c1e5ee5e --- /dev/null +++ b/reactos/apps/utils/net/whois/whois.xml @@ -0,0 +1,7 @@ + + . + kernel32 + ws2_32 + whois.c + whois.rc + diff --git a/reactos/baseaddress.cfg b/reactos/baseaddress.cfg deleted file mode 100644 index 3af2a82f48a..00000000000 --- a/reactos/baseaddress.cfg +++ /dev/null @@ -1,97 +0,0 @@ -# $Id$ -# -# Please try to keep this up2date. Please clean up -# after yourself. - -# REACTOS - -TARGET_BASE_LIB_DINPUT8 =0x00400000 -TARGET_BASE_LIB_DXDIAGN =0x00400000 -TARGET_BASE_LIB_NOTIFYHOOK =0x08000000 -TARGET_BASE_LIB_SECURE32 =0x10000000 -TARGET_BASE_LIB_DEVENUM =0x35680000 -TARGET_BASE_LIB_DSOUND =0x50000000 -TARGET_BASE_LIB_GLU32 =0x50000000 -TARGET_BASE_LIB_OPENGL32 =0x50000000 -TARGET_BASE_LIB_EXT_SLAYER =0x5C7E0000 -TARGET_BASE_LIB_SERIALUI =0x5CDA0000 -TARGET_BASE_LIB_DINPUT =0x5F580000 -TARGET_BASE_LIB_CPL_TIMEDATE =0x64DA0000 -TARGET_BASE_LIB_CPL_SYSDM =0x64DD0000 -TARGET_BASE_LIB_CPL_NCPL =0x64EA0000 -TARGET_BASE_LIB_CPL_MAIN =0x64F40000 -TARGET_BASE_LIB_CPL_INTL =0x64FB0000 -TARGET_BASE_LIB_CPL_DESK =0x65080000 -TARGET_BASE_LIB_CPL_APPWIZ =0x65100000 -TARGET_BASE_LIB_CPL_ACCESS =0x65180000 -TARGET_BASE_LIB_HID =0x688F0000 -TARGET_BASE_PSX_LIB_PSXDLL =0x68eb0000 -TARGET_BASE_LIB_PSAPI =0x68f70000 -TARGET_BASE_LIB_MSIMG32 =0x69cc0000 -TARGET_BASE_LIB_NETPLWIZ =0x6a240000 -TARGET_BASE_LIB_UNICODE =0x6b200000 -TARGET_BASE_VGA_DISPLAY =0x70000000 -TARGET_BASE_LIB_CARDS =0x701a0000 -TARGET_BASE_LIB_WININET =0x70200000 -TARGET_BASE_LIB_ACLUI =0x71550000 -TARGET_BASE_LIB_SHDOCVW =0x71700000 -TARGET_BASE_LIB_MSWSOCK =0x71a30000 -TARGET_BASE_LIB_WSOCK32 =0x71ab0000 -TARGET_BASE_LIB_ACLEDIT =0x71b70000 -TARGET_BASE_LIB_NETAPI32 =0x71c00000 -TARGET_BASE_LIB_WINFAX =0x722C0000 -TARGET_BASE_LIB_DEVMGR =0x72a90000 -TARGET_BASE_LIB_WINSCARD =0x723D0000 -TARGET_BASE_LIB_COREDLL =0x73d80000 -TARGET_BASE_LIB_LZEXPAND =0x73d80000 -TARGET_BASE_LIB_USERENV =0x74850000 -TARGET_BASE_LIB_SYSSETUP =0x74a30000 -TARGET_BASE_LIB_OLEDLG =0x74d00000 -TARGET_BASE_LIB_SAMLIB =0x750C0000 -TARGET_BASE_LIB_CABINET =0x75120000 -TARGET_BASE_LIB_MSGINA =0x75970000 -TARGET_BASE_LIB_COMMCTRL =0x75e60000 -TARGET_BASE_LIB_IMM32 =0x75e60000 -TARGET_BASE_LIB_RPCRT4 =0x76000000 -TARGET_BASE_LIB_MIDIMAP =0x76600000 -TARGET_BASE_LIB_SHLWAPI =0x76120000 -TARGET_BASE_LIB_COMCTL32 =0x76160000 -TARGET_BASE_LIB_COMDLG32 =0x76200000 -TARGET_BASE_LIB_OLEAUT32 =0x76260000 -TARGET_BASE_LIB_D3D8THK =0x76340000 -TARGET_BASE_LIB_RICHEDIT =0x76340000 -TARGET_BASE_LIB_TWAIN_32 =0x76380000 -TARGET_BASE_LIB_LSASRV =0x76540000 -TARGET_BASE_LIB_MPR =0x76620000 -TARGET_BASE_LIB_ODBC32 =0x76660000 -TARGET_BASE_LIB_SETUPAPI =0x76660000 -TARGET_BASE_LIB_GDIPLUS =0x76a00000 -TARGET_BASE_LIB_IMAGEHLP =0x76c90000 -TARGET_BASE_LIB_FMIFS =0x76df0000 -TARGET_BASE_LIB_SHELL32 =0x77200000 -TARGET_BASE_LIB_IPHLPAPI =0x77380000 -TARGET_BASE_LIB_MSACM =0x77400000 -TARGET_BASE_LIB_MMDRV =0x77500000 -TARGET_BASE_LIB_CRTDLL =0x77630000 -TARGET_BASE_LIB_PACKET =0x77780000 -TARGET_BASE_LIB_W2_32 =0x77780000 -TARGET_BASE_LIB_MSAFD =0x777a0000 -TARGET_BASE_LIB_IPRTPRIO =0x777c0000 -TARGET_BASE_LIB_SNMPAPI =0x777c0000 -TARGET_BASE_LIB_WINMM =0x777c0000 -TARGET_BASE_LIB_WS2HELP =0x777c0000 -TARGET_BASE_LIB_WSHIRDA =0x777c0000 -TARGET_BASE_NET_WSHTCPIP =0x777c0000 -TARGET_BASE_LIB_WINSPOOL =0x77800000 -TARGET_BASE_LIB_OLE32 =0x77a50000 -TARGET_BASE_LIB_OLEPRO32 =0x77a50000 -TARGET_BASE_LIB_VERSION =0x77a90000 -TARGET_BASE_LIB_ADVAPI32 =0x77dc0000 -TARGET_BASE_LIB_USER32 =0x77e50000 -TARGET_BASE_LIB_GDI32 =0x77ee0000 -TARGET_BASE_LIB_DNSAPI =0x77f00000 -TARGET_BASE_LIB_MSVCRT =0x78000000 -TARGET_BASE_LIB_MSVCRT20 =0x78500000 -TARGET_BASE_LIB_EXPAT =0x79000000 -TARGET_BASE_LIB_KERNEL32 =0x7C800000 -TARGET_BASE_LIB_NTDLL =0x7C900000 diff --git a/reactos/baseaddress.xml b/reactos/baseaddress.xml new file mode 100644 index 00000000000..61def477c51 --- /dev/null +++ b/reactos/baseaddress.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/boot/boot.xml b/reactos/boot/boot.xml new file mode 100644 index 00000000000..2bc1b6eb151 --- /dev/null +++ b/reactos/boot/boot.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/boot/freeldr/bootsect/Makefile b/reactos/boot/freeldr/bootsect/Makefile deleted file mode 100644 index e78fd127f86..00000000000 --- a/reactos/boot/freeldr/bootsect/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# -# FreeLoader -# Copyright (C) 1999, 2000, 2001 Brian Palmer -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# - -PATH_TO_TOP = ../../.. - -include ../rules.mak - -BOOTCD_DIR = $(PATH_TO_TOP)/../bootcd - -.PHONY : clean bootcd - -ifeq ($(ARCH),powerpc) -include Makefile.powerpc -else -include Makefile.i386 -endif diff --git a/reactos/boot/freeldr/bootsect/bootsect.xml b/reactos/boot/freeldr/bootsect/bootsect.xml new file mode 100644 index 00000000000..b94b3d4f53d --- /dev/null +++ b/reactos/boot/freeldr/bootsect/bootsect.xml @@ -0,0 +1,20 @@ + + + dosmbr.asm + + + + ext2.asm + + + + fat32.asm + + + + fat.asm + + + + isoboot.asm + diff --git a/reactos/boot/freeldr/freeldr.xml b/reactos/boot/freeldr/freeldr.xml new file mode 100644 index 00000000000..a504c71726c --- /dev/null +++ b/reactos/boot/freeldr/freeldr.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/boot/freeldr/freeldr/Makefile b/reactos/boot/freeldr/freeldr/Makefile deleted file mode 100644 index 7f63213b302..00000000000 --- a/reactos/boot/freeldr/freeldr/Makefile +++ /dev/null @@ -1,299 +0,0 @@ -# -# FreeLoader -# Copyright (C) 1998-2002 Brian Palmer -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# - -PATH_TO_TOP = ../../.. - -include ../rules.mak - -TARGET = i386 -ifeq ($(DEBUG),) -# Debugging information on (bigger binary) -#DEBUG = yes -# Debugging information off (smaller binary) -DEBUG = no -endif - -SRCDIR = . - -BOOTCD_DIR = $(PATH_TO_TOP)/bootcd - -TOOLSDIR = $(SRCDIR)/../tools - -DEPTOOL = $(subst /,$(SEP),$(FREELDR_TOOLS_PATH))$(SEP)deptool -TOOLS = $(DEPTOOL) - -preall : all - -.PHONY: BUILD_TOOLS -BUILD_TOOLS: - @$(MAKE) --no-print-directory -C $(FREELDR_TOOLS_PATH) - -############################################# - -.PHONY : clean -clean: - @-$(RM) $(ALL_OBJS) - @-$(RM) $(ALL_OBJS:.o=.d) - @-$(RM) freeldr.exe - @-$(RM) freeldr.sys - @-$(RM) freeldr.map - @-$(RM) setupldr.exe - @-$(RM) setupldr.sys - @-$(RM) setupldr.map - @$(MAKE) --no-print-directory -C $(FREELDR_TOOLS_PATH) - @echo freeldr: Clean ALL done. - -############################################# - -.PHONY : bootcd -bootcd : bootcd_dirs setup_loader boot_loader - -.PHONY : bootcd_dirs -bootcd_dirs: - $(MKDIR) $(BOOTCD_DIR) - $(MKDIR) $(BOOTCD_DIR)/disk - $(MKDIR) $(BOOTCD_DIR)/disk/reactos - $(MKDIR) $(BOOTCD_DIR)/disk/install - $(MKDIR) $(BOOTCD_DIR)/disk/bootdisk - $(MKDIR) $(BOOTCD_DIR)/disk/loader - -.PHONY : boot_loader -boot_loader : freeldr.sys - $(CP) freeldr.sys $(BOOTCD_DIR)/disk/loader/freeldr.sys - $(CP) ../freeldr.ini $(BOOTCD_DIR)/disk/loader/freeldr.ini - -.PHONY : setup_loader -setup_loader : setupldr.sys - $(CP) setupldr.sys $(BOOTCD_DIR)/disk/loader/setupldr.sys - - -COMPILER_OPTIONS = -Wall -Werror -nostdlib -ffreestanding -fno-builtin -fno-inline \ - -fno-zero-initialized-in-bss -O1 -MD -# FreeLoader does not use any of the standard libraries, includes, or built-in functions - -ifeq ($(DEBUG),yes) -COMPILER_DEBUG_DEFINES = -DDEBUG -else -COMPILER_DEBUG_DEFINES = -endif - -COMPILER_DEFINES = -D__$(TARGET)__ $(COMPILER_DEBUG_DEFINES) - -COMPILER_INCLUDES = -I$(SRCDIR)/include -I$(PATH_TO_TOP)/w32api/include -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/ntoskrnl/include - -CFLAGS = $(COMPILER_OPTIONS) \ - $(COMPILER_DEFINES) \ - $(COMPILER_INCLUDES) - -LINKER_OPTIONS = -N -Ttext=0x8000 - -LFLAGS = $(LINKER_OPTIONS) - -ifeq ($(HOST),mingw32-linux) - NASMFLAGS = -f win32 -else - NASMFLAGS = -f elf -endif - -# fathelp.o must come first in the link line because it contains bootsector helper code -# arch.o must come second in the link line because it contains the startup code -ARCH_I386_OBJS = fathelp.o \ - arch.o \ - i386idt.o \ - i386trap.o \ - i386cpu.o \ - i386pnp.o \ - boot.o \ - linux.o \ - mb.o \ - i386rtl.o \ - i386vid.o \ - drvmap.o \ - int386.o \ - i386disk.o \ - portio.o \ - hardware.o \ - hwacpi.o \ - hwapm.o \ - hwcpu.o \ - hwpci.o \ - archmach.o \ - machpc.o \ - machxbox.o \ - pccons.o \ - pcdisk.o \ - pcmem.o \ - pcrtc.o \ - pcvideo.o \ - xboxcons.o \ - xboxdisk.o \ - xboxfont.o \ - xboxhw.o \ - xboxmem.o \ - xboxrtc.o \ - xboxvideo.o \ - _alloca.o # For Mingw32 builds - -ARCH_OBJS = $(addprefix i386/,$(ARCH_I386_OBJS)) - -RTL_OBJS = print.o \ - stdlib.o \ - string.o \ - list.o \ - memcmp.o \ - memcpy.o \ - memmove.o \ - memset.o - -FS_OBJS = fs.o \ - fat.o \ - iso.o \ - ext2.o \ - ntfs.o \ - fsrec.o - -UI_OBJS = tui.o \ - tuimenu.o \ - ui.o \ - gui.o - -REACTOS_OBJS = arcname.o \ - binhive.o \ - registry.o - -COMM_OBJS = rs232.o - -DISK_OBJS = disk.o \ - partition.o - -MM_OBJS = mm.o \ - meminit.o - -CACHE_OBJS = cache.o \ - blocklist.o - -INIFILE_OBJS = inifile.o \ - ini_init.o \ - parse.o - -INFFILE_OBJS = inffile.o - -VIDEO_OBJS = video.o \ - fade.o \ - palette.o \ - pixel.o \ - bank.o - -# libgcc2.o contains code (__udivdi3, __umoddi3) necessary to do -# 64-bit division on the i386 (and other 32-bit) architectures -# This code was taken from the GCC v3.1 source -MATH_OBJS = libgcc2.o - -BASE_OBJS = freeldr.o \ - debug.o \ - multiboot.o \ - version.o \ - cmdline.o \ - machine.o - -FREELDR_OBJS = bootmgr.o \ - drivemap.o \ - miscboot.o \ - options.o \ - linuxboot.o \ - oslist.o \ - custom.o - -ROSLDR_OBJS = reactos.o - -SETUPLDR_OBJS = setupldr.o - -COMMON_OBJS = $(addprefix arch/,$(ARCH_OBJS)) \ - $(addprefix rtl/,$(RTL_OBJS)) \ - $(addprefix fs/,$(FS_OBJS)) \ - $(addprefix ui/,$(UI_OBJS)) \ - $(addprefix reactos/,$(REACTOS_OBJS)) \ - $(addprefix comm/,$(COMM_OBJS)) \ - $(addprefix disk/,$(DISK_OBJS)) \ - $(addprefix mm/,$(MM_OBJS)) \ - $(addprefix cache/,$(CACHE_OBJS)) \ - $(addprefix video/,$(VIDEO_OBJS)) \ - $(addprefix math/,$(MATH_OBJS)) \ - $(BASE_OBJS) - -SPECIAL_OBJS = $(addprefix inifile/,$(INIFILE_OBJS)) \ - $(addprefix inffile/,$(INFFILE_OBJS)) \ - $(FREELDR_OBJS) \ - $(addprefix reactos/,$(ROSLDR_OBJS)) \ - $(addprefix reactos/,$(SETUPLDR_OBJS)) - -F_OBJS = $(COMMON_OBJS) \ - $(addprefix inifile/,$(INIFILE_OBJS)) \ - $(addprefix reactos/,$(ROSLDR_OBJS)) \ - $(FREELDR_OBJS) - -S_OBJS = $(COMMON_OBJS) \ - $(addprefix inifile/,$(INIFILE_OBJS)) \ - $(addprefix inffile/,$(INFFILE_OBJS)) \ - $(addprefix reactos/,$(SETUPLDR_OBJS)) - - -ALL_OBJS = $(COMMON_OBJS) \ - $(SPECIAL_OBJS) - - -all : freeldr.sys setupldr.sys - @echo freeldr: Make ALL done. - - -freeldr.sys : $(ALL_OBJS) $(PATH_TO_TOP)/dk/w32/lib/librossym.a - @echo freeldr: LINKING $@ - @$(LD) $(LFLAGS) -o freeldr.exe $(F_OBJS) $(PATH_TO_TOP)/dk/w32/lib/librossym.a -ifeq ($(FULL_MAP),yes) - @$(OBJDUMP) -d -S freeldr.exe > freeldr.map -else - @$(NM) --numeric-sort freeldr.exe > freeldr.map -endif - @$(OBJCOPY) -O binary freeldr.exe freeldr.sys - - -setupldr.sys : $(ALL_OBJS) - @echo freeldr: LINKING $@ - @$(LD) $(LFLAGS) -Map setupldr.map -o setupldr.exe $(S_OBJS) -ifeq ($(FULL_MAP),yes) - @$(OBJDUMP) -d -S setupldr.exe > setupldr.map -else - @$(NM) --numeric-sort setupldr.exe > setupldr.map -endif - @$(OBJCOPY) -O binary setupldr.exe setupldr.sys - - -%.o :: %.c - @echo freeldr: Compiling $* - @$(CC) $(CFLAGS) -o $@ -c $< - @$(DEPTOOL) $*.d - -%.o :: %.S - @echo freeldr: Assembling $* - @$(CC) $(CFLAGS) -o $@ -c $< - @$(DEPTOOL) $*.d - -%.o :: %.asm - @echo freeldr: Assembling $* - @$(NASM_CMD) $(NASMFLAGS) -o $@ $< diff --git a/reactos/boot/freeldr/freeldr/freeldr.xml b/reactos/boot/freeldr/freeldr/freeldr.xml new file mode 100644 index 00000000000..3ef38e66da5 --- /dev/null +++ b/reactos/boot/freeldr/freeldr/freeldr.xml @@ -0,0 +1,8 @@ + + + freeldr_startup + freeldr_base64k + freeldr_base + freeldr_main + rossym + diff --git a/reactos/boot/freeldr/freeldr/freeldr_base.xml b/reactos/boot/freeldr/freeldr/freeldr_base.xml new file mode 100644 index 00000000000..6bf12a64b79 --- /dev/null +++ b/reactos/boot/freeldr/freeldr/freeldr_base.xml @@ -0,0 +1,109 @@ + + include + cache + include + + -nostdlib + -ffreestanding + -fno-builtin + -fno-inline + -fno-zero-initialized-in-bss + -Os + + + + _alloca.S + archmach.c + hardware.c + hwacpi.c + hwapm.c + hwcpu.c + hwpci.c + i386disk.c + i386rtl.c + i386vid.c + machpc.c + machxbox.c + pccons.c + pcdisk.c + pcmem.c + pcrtc.c + pcvideo.c + portio.c + xboxcons.c + xboxdisk.c + xboxfont.c + xboxhw.c + xboxmem.c + xboxrtc.c + xboxvideo.c + + + + + blocklist.c + cache.c + + + rs232.c + + + disk.c + partition.c + + + ext2.c + fat.c + fs.c + fsrec.c + iso.c + ntfs.c + + + ini_init.c + inifile.c + parse.c + + + libgcc2.c + + + meminit.c + mm.c + + + arcname.c + binhive.c + reactos.c + registry.c + + + list.c + memcmp.c + memcpy.c + memmove.c + memset.c + print.c + stdlib.c + string.c + + + gui.c + tui.c + tuimenu.c + ui.c + + + bank.c + fade.c + palette.c + pixel.c + video.c + + freeldr.c + debug.c + multiboot.c + version.c + cmdline.c + machine.c + diff --git a/reactos/boot/freeldr/freeldr/freeldr_base64k.xml b/reactos/boot/freeldr/freeldr/freeldr_base64k.xml new file mode 100644 index 00000000000..a170dd67209 --- /dev/null +++ b/reactos/boot/freeldr/freeldr/freeldr_base64k.xml @@ -0,0 +1,26 @@ + + include + include + + -nostdlib + -ffreestanding + -fno-builtin + -fno-inline + -fno-zero-initialized-in-bss + -Os + + + + boot.S + drvmap.S + i386cpu.S + i386idt.S + i386pnp.S + i386trap.S + int386.S + linux.S + mb.S + + + + diff --git a/reactos/boot/freeldr/freeldr/freeldr_main.xml b/reactos/boot/freeldr/freeldr/freeldr_main.xml new file mode 100644 index 00000000000..b57c69d622e --- /dev/null +++ b/reactos/boot/freeldr/freeldr/freeldr_main.xml @@ -0,0 +1,18 @@ + + include + include + + -nostdlib + -ffreestanding + -fno-builtin + -fno-inline + -fno-zero-initialized-in-bss + -Os + bootmgr.c + drivemap.c + miscboot.c + options.c + linuxboot.c + oslist.c + custom.c + diff --git a/reactos/boot/freeldr/freeldr/freeldr_startup.xml b/reactos/boot/freeldr/freeldr/freeldr_startup.xml new file mode 100644 index 00000000000..d69984cf13e --- /dev/null +++ b/reactos/boot/freeldr/freeldr/freeldr_startup.xml @@ -0,0 +1,18 @@ + + include + include + + -nostdlib + -ffreestanding + -fno-builtin + -fno-inline + -fno-zero-initialized-in-bss + + + + fathelp.asm + arch.S + + + + diff --git a/reactos/boot/freeldr/freeldr/setupldr.xml b/reactos/boot/freeldr/freeldr/setupldr.xml new file mode 100644 index 00000000000..011cfdd58bc --- /dev/null +++ b/reactos/boot/freeldr/freeldr/setupldr.xml @@ -0,0 +1,8 @@ + + + freeldr_startup + freeldr_base64k + freeldr_base + setupldr_main + rossym + diff --git a/reactos/boot/freeldr/freeldr/setupldr_main.xml b/reactos/boot/freeldr/freeldr/setupldr_main.xml new file mode 100644 index 00000000000..3fd450f3575 --- /dev/null +++ b/reactos/boot/freeldr/freeldr/setupldr_main.xml @@ -0,0 +1,17 @@ + + include + include + + -nostdlib + -ffreestanding + -fno-builtin + -fno-inline + -fno-zero-initialized-in-bss + -Os + + inffile.c + + + setupldr.c + + diff --git a/reactos/bootdata/bootcd/bootcd.xml b/reactos/bootdata/bootcd/bootcd.xml new file mode 100644 index 00000000000..04a20a5c52d --- /dev/null +++ b/reactos/bootdata/bootcd/bootcd.xml @@ -0,0 +1,2 @@ + + diff --git a/reactos/bootdata/bootdata.xml b/reactos/bootdata/bootdata.xml new file mode 100644 index 00000000000..d0da3503186 --- /dev/null +++ b/reactos/bootdata/bootdata.xml @@ -0,0 +1,14 @@ +autorun.inf +icon.ico +readme.txt +hivecls.inf +hivedef.inf +hivesft.inf +hivesys.inf +txtsetup.sif + + + + + + diff --git a/reactos/bootdata/livecd/livecd.xml b/reactos/bootdata/livecd/livecd.xml new file mode 100644 index 00000000000..766fa73a1c3 --- /dev/null +++ b/reactos/bootdata/livecd/livecd.xml @@ -0,0 +1,2 @@ + + diff --git a/reactos/config b/reactos/config deleted file mode 100644 index 46774536a83..00000000000 --- a/reactos/config +++ /dev/null @@ -1,39 +0,0 @@ -# -# Architecture to build for -# -# Specify one of: i386 -# Possible values in the future: alpha,i386,m68k,mips,powerpc -ARCH := i386 - -# -# Which cpu should reactos optimize for -# example : i486, i586, pentium, pentium2, pentium3, pentium4 -# athlon-xp, athlon-mp, k6-2, -# -# see gcc manual for more cpu names and which cpus it can -# be optimized for. -# - -OARCH := i486 - -# -# Whether to compile in the kernel debugger -# -KDBG := 0 - -# -# Whether to compile for debugging -# Enabling this enables ASSERTS, GDB and Special Debug Routines -# -DBG := 1 - -# -# Whether to compile a multiprocessor or single processor version -# -CONFIG_SMP := 0 - -# -# Which version of NDIS do we support up to? -# -#NDISVERSION=NDIS50 - diff --git a/reactos/config.template.xml b/reactos/config.template.xml new file mode 100644 index 00000000000..71a42fcdd53 --- /dev/null +++ b/reactos/config.template.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/bus/acpi/acpi.xml b/reactos/drivers/bus/acpi/acpi.xml new file mode 100644 index 00000000000..009ffc22f11 --- /dev/null +++ b/reactos/drivers/bus/acpi/acpi.xml @@ -0,0 +1,136 @@ + + include + ospm/include + ntoskrnl + hal + + dsfield.c + dsmethod.c + dsmthdat.c + dsobject.c + dsopcode.c + dsutils.c + dswexec.c + dswload.c + dswscope.c + dswstate.c + + + evevent.c + evmisc.c + evregion.c + evrgnini.c + evsci.c + evxface.c + evxfevnt.c + evxfregn.c + + + amconfig.c + amconvrt.c + amcreate.c + amdump.c + amdyadic.c + amfield.c + amfldio.c + ammisc.c + ammonad.c + ammutex.c + amnames.c + amprep.c + amregion.c + amresnte.c + amresolv.c + amresop.c + amstore.c + amstoren.c + amstorob.c + amsystem.c + amutils.c + amxface.c + + + hwacpi.c + hwgpe.c + hwregs.c + hwsleep.c + hwtimer.c + + + nsaccess.c + nsalloc.c + nseval.c + nsinit.c + nsload.c + nsnames.c + nsobject.c + nssearch.c + nsutils.c + nswalk.c + nsxfname.c + nsxfobj.c + + + + bm.c + bmnotify.c + bmpm.c + bmpower.c + bmrequest.c + bmsearch.c + bmutils.c + bmxface.c + + acpienum.c + acpisys.c + bn.c + fdo.c + osl.c + pdo.c + + + psargs.c + psopcode.c + psparse.c + psscope.c + pstree.c + psutils.c + pswalk.c + psxface.c + + + rsaddr.c + rscalc.c + rscreate.c + rsdump.c + rsio.c + rsirq.c + rslist.c + rsmemory.c + rsmisc.c + rsutils.c + rsxface.c + + + tbconvrt.c + tbget.c + tbinstal.c + tbutils.c + tbxface.c + tbxfroot.c + + + cmalloc.c + cmclib.c + cmcopy.c + cmdebug.c + cmdelete.c + cmeval.c + cmglobal.c + cminit.c + cmobject.c + cmutils.c + cmxface.c + + acpi.rc + diff --git a/reactos/drivers/bus/acpi/makefile b/reactos/drivers/bus/acpi/makefile deleted file mode 100644 index 2417cdf8fff..00000000000 --- a/reactos/drivers/bus/acpi/makefile +++ /dev/null @@ -1,151 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = acpi - -TARGET_CFLAGS = -I./include -I./ospm/include - -TARGET_DDKLIBS = ntoskrnl.a - -OBJECTS_OSPM_BUSMGR = \ - ospm/busmgr/bm.o \ - ospm/busmgr/bmnotify.o \ - ospm/busmgr/bmpm.o \ - ospm/busmgr/bmpower.o \ - ospm/busmgr/bmrequest.o \ - ospm/busmgr/bmsearch.o \ - ospm/busmgr/bmutils.o \ - ospm/busmgr/bmxface.o - -OBJECTS_OSPM = \ - $(OBJECTS_OSPM_BUSMGR) \ - ospm/acpienum.o \ - ospm/acpisys.o \ - ospm/bn.o \ - ospm/fdo.o \ - ospm/osl.o \ - ospm/pdo.o - -OBJECTS_DISPATCHER = \ - dispatcher/dsfield.o \ - dispatcher/dsmethod.o \ - dispatcher/dsmthdat.o \ - dispatcher/dsobject.o \ - dispatcher/dsopcode.o \ - dispatcher/dsutils.o \ - dispatcher/dswexec.o \ - dispatcher/dswload.o \ - dispatcher/dswscope.o \ - dispatcher/dswstate.o - -OBJECTS_EVENTS = \ - events/evevent.o \ - events/evmisc.o \ - events/evregion.o \ - events/evrgnini.o \ - events/evsci.o \ - events/evxface.o \ - events/evxfevnt.o \ - events/evxfregn.o - -OBJECTS_EXECUTER = \ - executer/amconfig.o \ - executer/amconvrt.o \ - executer/amcreate.o \ - executer/amdump.o \ - executer/amdyadic.o \ - executer/amfield.o \ - executer/amfldio.o \ - executer/ammisc.o \ - executer/ammonad.o \ - executer/ammutex.o \ - executer/amnames.o \ - executer/amprep.o \ - executer/amregion.o \ - executer/amresnte.o \ - executer/amresolv.o \ - executer/amresop.o \ - executer/amstore.o \ - executer/amstoren.o \ - executer/amstorob.o \ - executer/amsystem.o \ - executer/amutils.o \ - executer/amxface.o - -OBJECTS_HARDWARE = \ - hardware/hwacpi.o \ - hardware/hwgpe.o \ - hardware/hwregs.o \ - hardware/hwsleep.o \ - hardware/hwtimer.o - -OBJECTS_NAMESPACE = \ - namespace/nsaccess.o \ - namespace/nsalloc.o \ - namespace/nseval.o \ - namespace/nsinit.o \ - namespace/nsload.o \ - namespace/nsnames.o \ - namespace/nsobject.o \ - namespace/nssearch.o \ - namespace/nsutils.o \ - namespace/nswalk.o \ - namespace/nsxfname.o \ - namespace/nsxfobj.o - -OBJECTS_PARSER = \ - parser/psargs.o \ - parser/psopcode.o \ - parser/psparse.o \ - parser/psscope.o \ - parser/pstree.o \ - parser/psutils.o \ - parser/pswalk.o \ - parser/psxface.o - -OBJECTS_RESOURCE = \ - resource/rsaddr.o \ - resource/rscalc.o \ - resource/rscreate.o \ - resource/rsdump.o \ - resource/rsio.o \ - resource/rsirq.o \ - resource/rslist.o \ - resource/rsmemory.o \ - resource/rsmisc.o \ - resource/rsutils.o \ - resource/rsxface.o - -OBJECTS_TABLES = \ - tables/tbconvrt.o \ - tables/tbget.o \ - tables/tbinstal.o \ - tables/tbutils.o \ - tables/tbxface.o \ - tables/tbxfroot.o - -OBJECTS_UTILS = \ - utils/cmalloc.o \ - utils/cmclib.o \ - utils/cmcopy.o \ - utils/cmdebug.o \ - utils/cmdelete.o \ - utils/cmeval.o \ - utils/cmglobal.o \ - utils/cminit.o \ - utils/cmobject.o \ - utils/cmutils.o \ - utils/cmxface.o - -TARGET_OBJECTS = \ - $(OBJECTS_OSPM) $(OBJECTS_DISPATCHER) $(OBJECTS_EVENTS) \ - $(OBJECTS_EXECUTER) $(OBJECTS_HARDWARE) $(OBJECTS_NAMESPACE) \ - $(OBJECTS_PARSER) $(OBJECTS_RESOURCE) $(OBJECTS_TABLES) \ - $(OBJECTS_UTILS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/bus/directory.xml b/reactos/drivers/bus/directory.xml new file mode 100644 index 00000000000..c0b239bc0a4 --- /dev/null +++ b/reactos/drivers/bus/directory.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/drivers/bus/isapnp/isapnp.xml b/reactos/drivers/bus/isapnp/isapnp.xml new file mode 100644 index 00000000000..44defa4a92f --- /dev/null +++ b/reactos/drivers/bus/isapnp/isapnp.xml @@ -0,0 +1,8 @@ + + . + + ntoskrnl + hal + isapnp.c + isapnp.rc + diff --git a/reactos/drivers/bus/isapnp/makefile b/reactos/drivers/bus/isapnp/makefile deleted file mode 100644 index bc656b7bdd0..00000000000 --- a/reactos/drivers/bus/isapnp/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = isapnp - -TARGET_OBJECTS = isapnp.o - -TARGET_CFLAGS = -D__USE_W32API -Werror -Wall - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/bus/pci/makefile b/reactos/drivers/bus/pci/makefile deleted file mode 100644 index 86bb78e44b8..00000000000 --- a/reactos/drivers/bus/pci/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = pci - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_OBJECTS = fdo.o pci.o pdo.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/bus/pci/pci.xml b/reactos/drivers/bus/pci/pci.xml new file mode 100644 index 00000000000..c3c8ccecd3f --- /dev/null +++ b/reactos/drivers/bus/pci/pci.xml @@ -0,0 +1,10 @@ + + . + + ntoskrnl + hal + fdo.c + pci.c + pdo.c + pci.rc + diff --git a/reactos/drivers/bus/serenum/makefile b/reactos/drivers/bus/serenum/makefile index 8c3c924f9db..321b09bb095 100644 --- a/reactos/drivers/bus/serenum/makefile +++ b/reactos/drivers/bus/serenum/makefile @@ -1,20 +1,5 @@ -# $Id: makefile 12852 2005-01-06 13:58:04Z mf $ +# This file is automatically generated. -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = serenum - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_OBJECTS = \ - detect.o \ - fdo.o \ - misc.o \ - pdo.o \ - serenum.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk +TOP = ..\..\.. +DEFAULT = serenum +include $(TOP)/proxy.mak diff --git a/reactos/drivers/bus/serenum/serenum.xml b/reactos/drivers/bus/serenum/serenum.xml new file mode 100644 index 00000000000..9db96ab67e1 --- /dev/null +++ b/reactos/drivers/bus/serenum/serenum.xml @@ -0,0 +1,12 @@ + + . + + ntoskrnl + hal + detect.c + fdo.c + misc.c + pdo.c + serenum.c + serenum.rc + diff --git a/reactos/drivers/dd/beep/beep.xml b/reactos/drivers/dd/beep/beep.xml new file mode 100644 index 00000000000..aa0d0fefe25 --- /dev/null +++ b/reactos/drivers/dd/beep/beep.xml @@ -0,0 +1,7 @@ + + + ntoskrnl + hal + beep.c + beep.rc + diff --git a/reactos/drivers/dd/beep/makefile b/reactos/drivers/dd/beep/makefile deleted file mode 100644 index 372bc03779a..00000000000 --- a/reactos/drivers/dd/beep/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = beep - -TARGET_OBJECTS = beep.o - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/blue/blue.xml b/reactos/drivers/dd/blue/blue.xml new file mode 100644 index 00000000000..b64bf11e9ba --- /dev/null +++ b/reactos/drivers/dd/blue/blue.xml @@ -0,0 +1,7 @@ + + + ntoskrnl + hal + blue.c + blue.rc + diff --git a/reactos/drivers/dd/blue/makefile b/reactos/drivers/dd/blue/makefile deleted file mode 100644 index 816308a5530..00000000000 --- a/reactos/drivers/dd/blue/makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = blue - -TARGET_OBJECTS = blue.o - -TARGET_CFLAGS = -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/drivers/dd/bootvid/Makefile b/reactos/drivers/dd/bootvid/Makefile deleted file mode 100644 index 411e13f2bfb..00000000000 --- a/reactos/drivers/dd/bootvid/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = bootvid - -TARGET_OBJECTS = bootvid.o pixelsup_i386.o - -TARGET_CFLAGS = -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/bootvid/bootvid.xml b/reactos/drivers/dd/bootvid/bootvid.xml new file mode 100644 index 00000000000..11f0003ba1c --- /dev/null +++ b/reactos/drivers/dd/bootvid/bootvid.xml @@ -0,0 +1,8 @@ + + . + ntoskrnl + hal + bootvid.c + pixelsup_i386.S + bootvid.rc + diff --git a/reactos/drivers/dd/debugout/debugout.xml b/reactos/drivers/dd/debugout/debugout.xml new file mode 100644 index 00000000000..244bfc3460f --- /dev/null +++ b/reactos/drivers/dd/debugout/debugout.xml @@ -0,0 +1,7 @@ + + . + ntoskrnl + hal + debugout.c + debugout.rc + diff --git a/reactos/drivers/dd/debugout/makefile b/reactos/drivers/dd/debugout/makefile deleted file mode 100644 index e0a10024d79..00000000000 --- a/reactos/drivers/dd/debugout/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = debugout - -TARGET_OBJECTS = debugout.o - -TARGET_CFLAGS = -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/directory.xml b/reactos/drivers/dd/directory.xml new file mode 100644 index 00000000000..f25505023f4 --- /dev/null +++ b/reactos/drivers/dd/directory.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/dd/mpu401/makefile b/reactos/drivers/dd/mpu401/makefile deleted file mode 100644 index a80b06aee58..00000000000 --- a/reactos/drivers/dd/mpu401/makefile +++ /dev/null @@ -1,22 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = mpu401 - -TARGET_OBJECTS = mpu401.o \ - portio.o \ - settings.o - -TARGET_CFLAGS = -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/drivers/dd/mpu401/mpu401.xml b/reactos/drivers/dd/mpu401/mpu401.xml new file mode 100644 index 00000000000..e28339c3ca0 --- /dev/null +++ b/reactos/drivers/dd/mpu401/mpu401.xml @@ -0,0 +1,9 @@ + + . + ntoskrnl + hal + mpu401.c + portio.c + settings.c + mpu401.rc + diff --git a/reactos/drivers/dd/null/makefile b/reactos/drivers/dd/null/makefile deleted file mode 100644 index df32dae6834..00000000000 --- a/reactos/drivers/dd/null/makefile +++ /dev/null @@ -1,17 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -include $(PATH_TO_TOP)/rules.mak - -TARGET_TYPE = driver - -TARGET_NAME = null - -TARGET_OBJECTS = null.o - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_LIBS = $(SDK_PATH_LIB)/libpseh.a - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/null/null.xml b/reactos/drivers/dd/null/null.xml new file mode 100644 index 00000000000..310cdbd4e96 --- /dev/null +++ b/reactos/drivers/dd/null/null.xml @@ -0,0 +1,9 @@ + + . + + pseh + ntoskrnl + hal + null.c + null.rc + diff --git a/reactos/drivers/dd/parallel/makefile b/reactos/drivers/dd/parallel/makefile deleted file mode 100644 index 40afcbafaca..00000000000 --- a/reactos/drivers/dd/parallel/makefile +++ /dev/null @@ -1,13 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = parallel - -TARGET_OBJECTS = parallel.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/parallel/parallel.xml b/reactos/drivers/dd/parallel/parallel.xml new file mode 100644 index 00000000000..52bfc5db687 --- /dev/null +++ b/reactos/drivers/dd/parallel/parallel.xml @@ -0,0 +1,7 @@ + + . + ntoskrnl + hal + parallel.c + parallel.rc + diff --git a/reactos/drivers/dd/ramdrv/makefile b/reactos/drivers/dd/ramdrv/makefile deleted file mode 100644 index 4093d47e758..00000000000 --- a/reactos/drivers/dd/ramdrv/makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $Id$ - -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = ramdrv - -TARGET_OBJECTS = ramdrv.o - -TARGET_DDKLIBS = unbzip2.a - -TARGET_NORC = yes - -TARGET_CFLAGS=-I../../../ntoskrnl/include -g - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/ramdrv/ramdrv.rc b/reactos/drivers/dd/ramdrv/ramdrv.rc new file mode 100644 index 00000000000..9a0ffbb883b --- /dev/null +++ b/reactos/drivers/dd/ramdrv/ramdrv.rc @@ -0,0 +1,5 @@ +#define REACTOS_VERSION_DLL +#define REACTOS_STR_FILE_DESCRIPTION "RAM Disk Device Driver\0" +#define REACTOS_STR_INTERNAL_NAME "ramdrv\0" +#define REACTOS_STR_ORIGINAL_FILENAME "ramdrv.sys\0" +#include diff --git a/reactos/drivers/dd/ramdrv/ramdrv.xml b/reactos/drivers/dd/ramdrv/ramdrv.xml new file mode 100644 index 00000000000..1c4c495d0e4 --- /dev/null +++ b/reactos/drivers/dd/ramdrv/ramdrv.xml @@ -0,0 +1,8 @@ + + . + ntoskrnl + hal + bzip2 + ramdrv.c + ramdrv.rc + diff --git a/reactos/drivers/dd/serial/makefile b/reactos/drivers/dd/serial/makefile deleted file mode 100644 index f78038259ca..00000000000 --- a/reactos/drivers/dd/serial/makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = serial - -TARGET_OBJECTS = \ - circularbuffer.o \ - cleanup.o \ - close.o \ - create.o \ - devctrl.o \ - info.o \ - legacy.o \ - misc.o \ - pnp.o \ - power.o \ - rw.o \ - serial.o - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/serial/serial.xml b/reactos/drivers/dd/serial/serial.xml new file mode 100644 index 00000000000..0a4a4488f16 --- /dev/null +++ b/reactos/drivers/dd/serial/serial.xml @@ -0,0 +1,18 @@ + + + ntoskrnl + hal + 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 + diff --git a/reactos/drivers/dd/sndblst/card.c b/reactos/drivers/dd/sndblst/card.c index 434406b2688..e1b38b018ab 100644 --- a/reactos/drivers/dd/sndblst/card.c +++ b/reactos/drivers/dd/sndblst/card.c @@ -50,8 +50,6 @@ BOOLEAN IsSpeakerEnabled(UINT BasePort) VOID BeginPlayback(UINT BasePort, UINT BitDepth, UINT Channels, UINT BlockSize) { - CHAR Command; - DPRINT("BeginPlayback(%d, %d, %d, %d)\n", BasePort, BitDepth, Channels, BlockSize); // switch(BitDepth) diff --git a/reactos/drivers/dd/sndblst/dma.c b/reactos/drivers/dd/sndblst/dma.c index bbeddbbce19..876b17063d4 100644 --- a/reactos/drivers/dd/sndblst/dma.c +++ b/reactos/drivers/dd/sndblst/dma.c @@ -70,7 +70,6 @@ BOOLEAN CreateDMA(PDEVICE_OBJECT DeviceObject) { DEVICE_DESCRIPTION Desc; ULONG MappedRegs = 0; - NTSTATUS Status; PDEVICE_EXTENSION Device = DeviceObject->DeviceExtension; KEVENT DMAEvent; KIRQL OldIrql; diff --git a/reactos/drivers/dd/sndblst/irq.c b/reactos/drivers/dd/sndblst/irq.c index 1448f772ee8..b9ffbff695f 100644 --- a/reactos/drivers/dd/sndblst/irq.c +++ b/reactos/drivers/dd/sndblst/irq.c @@ -14,14 +14,6 @@ BOOLEAN CheckIRQ(PDEVICE_EXTENSION Parameters) for (i = 0; ValidIRQs[i] != 0xffff; i ++) { - UCHAR ThisIRQ = ValidIRQs[i]; - UCHAR bConfig = (UCHAR)(0x40 | - (ThisIRQ == 7 ? 0x08 : - ThisIRQ == 9 ? 0x10 : - ThisIRQ == 10 ? 0x18 : - ThisIRQ == 11 ? 0x20 : - 0)); - // Consult the card // OUTPORT(pHw, BOARD_CONFIG, bConfig); @@ -37,7 +29,6 @@ BOOLEAN CheckIRQ(PDEVICE_EXTENSION Parameters) // else // Compaq stuff? { - UCHAR CompaqPIDR; UCHAR Expected; switch (Parameters->IRQ) @@ -59,9 +50,6 @@ BOOLEAN ISR( IN PKINTERRUPT pInterrupt, IN PVOID Context) { - PDEVICE_OBJECT DeviceObject = (PDEVICE_OBJECT)Context; - PDEVICE_EXTENSION Parameters = DeviceObject->DeviceExtension; - DPRINT("*** Processing ISR ***\n"); // What do we do here then? diff --git a/reactos/drivers/dd/sndblst/makefile b/reactos/drivers/dd/sndblst/makefile deleted file mode 100644 index 048b520f1b8..00000000000 --- a/reactos/drivers/dd/sndblst/makefile +++ /dev/null @@ -1,20 +0,0 @@ -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_CFLAGS = -Wall #-Werror - -TARGET_TYPE = driver - -TARGET_NAME = sndblst - -TARGET_OBJECTS = sndblst.o \ - portio.o \ - settings.o \ - dma.o \ - irq.o \ - card.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/sndblst/portio.c b/reactos/drivers/dd/sndblst/portio.c index ca57de4a56e..66ff60c600e 100644 --- a/reactos/drivers/dd/sndblst/portio.c +++ b/reactos/drivers/dd/sndblst/portio.c @@ -83,7 +83,7 @@ WORD InitSoundCard(UINT BasePort) { // Check to make sure the reset was acknowledged: for (TimeOut = SB_TIMEOUT; - Status = (SB_READ_DATA(BasePort) != SB_DSP_READY) && TimeOut > 0; + (Status = (SB_READ_DATA(BasePort) != SB_DSP_READY) && (TimeOut > 0)); TimeOut --); } diff --git a/reactos/drivers/dd/sndblst/settings.c b/reactos/drivers/dd/sndblst/settings.c index 983918d7159..71d6ec49969 100644 --- a/reactos/drivers/dd/sndblst/settings.c +++ b/reactos/drivers/dd/sndblst/settings.c @@ -292,8 +292,6 @@ NTSTATUS SaveSettings( NT status STATUS_SUCCESS if successful */ { - NTSTATUS s; - DPRINT("SaveSettings() unimplemented\n"); // UNIMPLEMENTED; diff --git a/reactos/drivers/dd/sndblst/sndblst.c b/reactos/drivers/dd/sndblst/sndblst.c index d0db6053b4a..9bebd13bada 100644 --- a/reactos/drivers/dd/sndblst/sndblst.c +++ b/reactos/drivers/dd/sndblst/sndblst.c @@ -294,8 +294,6 @@ BlasterDeviceControl(PDEVICE_OBJECT DeviceObject, { PIO_STACK_LOCATION Stack; PDEVICE_EXTENSION DeviceExtension; - UINT ByteCount; - PBYTE Data; DPRINT("BlasterDeviceControl() called!\n"); diff --git a/reactos/drivers/dd/sndblst/sndblst.xml b/reactos/drivers/dd/sndblst/sndblst.xml new file mode 100644 index 00000000000..4f93ed42ab6 --- /dev/null +++ b/reactos/drivers/dd/sndblst/sndblst.xml @@ -0,0 +1,12 @@ + + . + ntoskrnl + hal + card.c + dma.c + irq.c + portio.c + settings.c + sndblst.c + sndblst.rc + diff --git a/reactos/drivers/dd/sound/dsp.c b/reactos/drivers/dd/sound/dsp.c index 8c6ab11575a..51668b4b7b0 100644 --- a/reactos/drivers/dd/sound/dsp.c +++ b/reactos/drivers/dd/sound/dsp.c @@ -11,8 +11,8 @@ * Minor build fix */ -#include "dsp.h" #include "sb16.h" +#include "dsp.h" /************************************ * unsigned char read_dsp(void) @@ -25,6 +25,7 @@ unsigned char read_dsp(unsigned short base) { // while((inb(base+0x0e)&0x80)==0); //Wait until there is something to read // return inb(base+0x0a); + return 0; } /************************************' diff --git a/reactos/drivers/dd/sound/dsp.h b/reactos/drivers/dd/sound/dsp.h index 8f79320280e..543cf4491c7 100644 --- a/reactos/drivers/dd/sound/dsp.h +++ b/reactos/drivers/dd/sound/dsp.h @@ -13,5 +13,5 @@ unsigned short base; unsigned char irq,dma8,dma16; unsigned char read_dsp(unsigned short base); void write_dsp(unsigned short base,unsigned char data); -//sb_status detect_dsp(SB16* sb16); +sb_status detect_dsp(SB16* sb16); sb_status reset_dsp(unsigned short base_address); diff --git a/reactos/drivers/dd/sound/makefile b/reactos/drivers/dd/sound/makefile deleted file mode 100644 index 96879af0fb7..00000000000 --- a/reactos/drivers/dd/sound/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = sb16 - -TARGET_OBJECTS = sb16.o dsp.o mixer.o sb_waveout.o sound.o wave.o - -TARGET_CFLAGS = -Wall - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/dd/sound/mixer.c b/reactos/drivers/dd/sound/mixer.c index dc3dc0d1287..30152610c18 100644 --- a/reactos/drivers/dd/sound/mixer.c +++ b/reactos/drivers/dd/sound/mixer.c @@ -11,8 +11,8 @@ * Minor build fixes */ -#include "dsp.h" #include "sb16.h" +#include "dsp.h" #include "mixer.h" unsigned char read_mixer(unsigned short base,unsigned char reg) @@ -20,6 +20,7 @@ unsigned char read_mixer(unsigned short base,unsigned char reg) // outb(base+0x04,reg); // return inb(base+0x05); + return 0; } unsigned char get_irq(SB16* sb16) diff --git a/reactos/drivers/dd/sound/sound.c b/reactos/drivers/dd/sound/sound.c index 2e51da97ff3..d85dfdaa4b9 100644 --- a/reactos/drivers/dd/sound/sound.c +++ b/reactos/drivers/dd/sound/sound.c @@ -77,6 +77,7 @@ NTSTATUS ModuleEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath) * RETURNS: Success or failure */ { +#if 0 PDEVICE_OBJECT DeviceObject; NTSTATUS ret; @@ -86,7 +87,7 @@ NTSTATUS ModuleEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath) DPRINT1("Soundblaster 16 not found\n"); return 0; } - ret = IoCreateDevice(DriverObject,0,"\\Device\\WaveOut",FILE_DEVICE_WAVE_OUT,0,FALSE,&DeviceObject); + ret = IoCreateDevice(DriverObject,0,L"\\Device\\WaveOut",FILE_DEVICE_WAVE_OUT,0,FALSE,&DeviceObject); if (ret!=STATUS_SUCCESS) return(ret); @@ -96,7 +97,7 @@ NTSTATUS ModuleEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath) DriverObject->MajorFunction[IRP_MJ_WRITE] = Dispatch; DriverObject->MajorFunction[IRP_MJ_WRITE] = Dispatch; DriverObject->DriverUnload = NULL; - +#endif return(STATUS_SUCCESS); } diff --git a/reactos/drivers/dd/sound/sound.xml b/reactos/drivers/dd/sound/sound.xml new file mode 100644 index 00000000000..6dc777644da --- /dev/null +++ b/reactos/drivers/dd/sound/sound.xml @@ -0,0 +1,11 @@ + + ntoskrnl + hal + dsp.c + mixer.c + sb16.c + sb_waveout.c + sound.c + wave.c + sb16.rc + diff --git a/reactos/drivers/dd/sound/wave.c b/reactos/drivers/dd/sound/wave.c index b5d44266857..0b30da3b0ff 100644 --- a/reactos/drivers/dd/sound/wave.c +++ b/reactos/drivers/dd/sound/wave.c @@ -29,7 +29,7 @@ SB16 sb16; ULONG OldIRQ; PKINTERRUPT IrqObject; -BOOLEAN DMAOutputISR(PKINTERRUPT Interrupt, PVOID ServiceContext) +BOOLEAN STDCALL DMAOutputISR(PKINTERRUPT Interrupt, PVOID ServiceContext) { DPRINT1("interrupt\n"); return FALSE; @@ -42,7 +42,7 @@ void sb16_play(WAVE_HDR* wave) KIRQL Dirql; KAFFINITY Affinity; PKINTERRUPT IrqObject; - unsigned int mask,newmask; + unsigned int newmask; unsigned int i; unsigned int tmp[255]; diff --git a/reactos/drivers/directory.xml b/reactos/drivers/directory.xml new file mode 100644 index 00000000000..a322a86aa4d --- /dev/null +++ b/reactos/drivers/directory.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/fs/cdfs/cdfs.xml b/reactos/drivers/fs/cdfs/cdfs.xml new file mode 100644 index 00000000000..71de9692500 --- /dev/null +++ b/reactos/drivers/fs/cdfs/cdfs.xml @@ -0,0 +1,19 @@ + + + . + ntoskrnl + hal + cdfs.c + cleanup.c + close.c + common.c + create.c + dirctl.c + fcb.c + finfo.c + fsctl.c + misc.c + rw.c + volinfo.c + cdfs.rc + diff --git a/reactos/drivers/fs/cdfs/makefile b/reactos/drivers/fs/cdfs/makefile deleted file mode 100644 index 605e96b3295..00000000000 --- a/reactos/drivers/fs/cdfs/makefile +++ /dev/null @@ -1,24 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = cdfs - -TARGET_OBJECTS = $(TARGET_NAME).o close.o common.o create.o dirctl.o \ - fcb.o finfo.o fsctl.o misc.o rw.o volinfo.o cleanup.o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/fs/directory.xml b/reactos/drivers/fs/directory.xml new file mode 100644 index 00000000000..ae59140dd7b --- /dev/null +++ b/reactos/drivers/fs/directory.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/fs/fs_rec/fs_rec.xml b/reactos/drivers/fs/fs_rec/fs_rec.xml new file mode 100644 index 00000000000..3d3c6927ba8 --- /dev/null +++ b/reactos/drivers/fs/fs_rec/fs_rec.xml @@ -0,0 +1,12 @@ + + . + ntoskrnl + hal + blockdev.c + cdfs.c + fat.c + fs_rec.c + ntfs.c + udfs.c + fs_rec.rc + diff --git a/reactos/drivers/fs/fs_rec/makefile b/reactos/drivers/fs/fs_rec/makefile deleted file mode 100644 index 63cbe9715f9..00000000000 --- a/reactos/drivers/fs/fs_rec/makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = fs_rec - -TARGET_OBJECTS = \ - blockdev.o \ - fs_rec.o \ - cdfs.o \ - fat.o \ - ntfs.o \ - udfs.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) *.o *.sys *.sym - -TARGET_CFLAGS = -Werror -Wall - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/drivers/fs/ms/Makefile b/reactos/drivers/fs/ms/Makefile deleted file mode 100644 index 01fc6d35b99..00000000000 --- a/reactos/drivers/fs/ms/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = msfs - -TARGET_OBJECTS = \ - create.o \ - finfo.o \ - fsctrl.o \ - msfs.o \ - rw.o - -TARGET_CFLAGS = -Werror -Wall - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/fs/ms/msfs.xml b/reactos/drivers/fs/ms/msfs.xml new file mode 100644 index 00000000000..54e4da5d3de --- /dev/null +++ b/reactos/drivers/fs/ms/msfs.xml @@ -0,0 +1,11 @@ + + . + ntoskrnl + hal + create.c + finfo.c + fsctrl.c + msfs.c + rw.c + msfs.rc + diff --git a/reactos/drivers/fs/mup/makefile b/reactos/drivers/fs/mup/makefile deleted file mode 100644 index 7135d71b411..00000000000 --- a/reactos/drivers/fs/mup/makefile +++ /dev/null @@ -1,17 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = mup - -TARGET_OBJECTS = $(TARGET_NAME).o create.o - -TARGET_CFLAGS = -Werror -Wall - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/drivers/fs/mup/mup.xml b/reactos/drivers/fs/mup/mup.xml new file mode 100644 index 00000000000..761eccee38b --- /dev/null +++ b/reactos/drivers/fs/mup/mup.xml @@ -0,0 +1,8 @@ + + . + ntoskrnl + hal + create.c + mup.c + mup.rc + diff --git a/reactos/drivers/fs/np/Makefile b/reactos/drivers/fs/np/Makefile deleted file mode 100644 index e0b35ea6bc0..00000000000 --- a/reactos/drivers/fs/np/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = npfs - -TARGET_OBJECTS = \ - create.o \ - finfo.o \ - fsctrl.o \ - npfs.o \ - rw.o \ - volume.o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/drivers/fs/np/npfs.xml b/reactos/drivers/fs/np/npfs.xml new file mode 100644 index 00000000000..8f413928ecb --- /dev/null +++ b/reactos/drivers/fs/np/npfs.xml @@ -0,0 +1,12 @@ + + . + ntoskrnl + hal + create.c + finfo.c + fsctrl.c + npfs.c + rw.c + volume.c + npfs.rc + diff --git a/reactos/drivers/fs/ntfs/makefile b/reactos/drivers/fs/ntfs/makefile deleted file mode 100644 index 68b5ae8ba2d..00000000000 --- a/reactos/drivers/fs/ntfs/makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = ntfs - -TARGET_CFLAGS = -Werror -Wall - -TARGET_OBJECTS = $(TARGET_NAME).o attrib.o blockdev.o create.o dirctl.o \ - fcb.o finfo.o fsctl.o mft.o volinfo.o close.o rw.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/drivers/fs/ntfs/ntfs.xml b/reactos/drivers/fs/ntfs/ntfs.xml new file mode 100644 index 00000000000..de7aa1bd2ca --- /dev/null +++ b/reactos/drivers/fs/ntfs/ntfs.xml @@ -0,0 +1,19 @@ + + + . + ntoskrnl + hal + attrib.c + blockdev.c + close.c + create.c + dirctl.c + fcb.c + finfo.c + fsctl.c + mft.c + ntfs.c + rw.c + volinfo.c + ntfs.rc + diff --git a/reactos/drivers/fs/vfat/makefile b/reactos/drivers/fs/vfat/makefile deleted file mode 100644 index 7ae216e9e62..00000000000 --- a/reactos/drivers/fs/vfat/makefile +++ /dev/null @@ -1,52 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = vfatfs - -TARGET_GCCLIBS = gcc - -TARGET_OBJECTS = \ - blockdev.o \ - cleanup.o \ - close.o \ - create.o \ - dir.o \ - direntry.o \ - dirwr.o \ - fat.o \ - fastio.o \ - fcb.o \ - finfo.o \ - iface.o \ - rw.o \ - shutdown.o \ - string.o \ - volume.o \ - misc.o \ - fsctl.o \ - ea.o \ - flush.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) *.o *.sys *.sym - -include $(PATH_TO_TOP)/config - -ifeq ($(DBG), 1) -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror -g -else -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror -O3 -fno-strict-aliasing -endif - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - diff --git a/reactos/drivers/fs/vfat/vfatfs.xml b/reactos/drivers/fs/vfat/vfatfs.xml new file mode 100644 index 00000000000..12aef38f53d --- /dev/null +++ b/reactos/drivers/fs/vfat/vfatfs.xml @@ -0,0 +1,29 @@ + + + . + + -lgcc + ntoskrnl + hal + blockdev.c + cleanup.c + close.c + create.c + dir.c + direntry.c + dirwr.c + ea.c + fat.c + fastio.c + fcb.c + finfo.c + flush.c + fsctl.c + iface.c + misc.c + rw.c + shutdown.c + string.c + volume.c + vfatfs.rc + diff --git a/reactos/drivers/input/directory.xml b/reactos/drivers/input/directory.xml new file mode 100644 index 00000000000..b4a50d073e3 --- /dev/null +++ b/reactos/drivers/input/directory.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/drivers/input/i8042prt/i8042prt.xml b/reactos/drivers/input/i8042prt/i8042prt.xml new file mode 100644 index 00000000000..0a191737516 --- /dev/null +++ b/reactos/drivers/input/i8042prt/i8042prt.xml @@ -0,0 +1,13 @@ + + + . + + ntoskrnl + hal + i8042prt.c + keyboard.c + mouse.c + ps2pp.c + registry.c + i8042prt.rc + diff --git a/reactos/drivers/input/i8042prt/makefile b/reactos/drivers/input/i8042prt/makefile index e9a809ce7d8..e2f3d646681 100644 --- a/reactos/drivers/input/i8042prt/makefile +++ b/reactos/drivers/input/i8042prt/makefile @@ -1,17 +1,5 @@ -# $Id$ +# This file is automatically generated. -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = i8042prt - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_OBJECTS = $(TARGET_NAME).o keyboard.o registry.o mouse.o ps2pp.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk +TOP = ..\..\.. +DEFAULT = i8042prt +include $(TOP)/proxy.mak diff --git a/reactos/drivers/input/kbdclass/kbdclass.xml b/reactos/drivers/input/kbdclass/kbdclass.xml new file mode 100644 index 00000000000..b0c834865d4 --- /dev/null +++ b/reactos/drivers/input/kbdclass/kbdclass.xml @@ -0,0 +1,9 @@ + + + . + + ntoskrnl + hal + kbdclass.c + kbdclass.rc + diff --git a/reactos/drivers/input/kbdclass/makefile b/reactos/drivers/input/kbdclass/makefile index d87c4e09e5b..4886fc6fcda 100644 --- a/reactos/drivers/input/kbdclass/makefile +++ b/reactos/drivers/input/kbdclass/makefile @@ -1,17 +1,5 @@ -# $Id$ +# This file is automatically generated. -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = kbdclass - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk +TOP = ..\..\.. +DEFAULT = kbdclass +include $(TOP)/proxy.mak diff --git a/reactos/drivers/input/mouclass/makefile b/reactos/drivers/input/mouclass/makefile deleted file mode 100644 index 531ca0f91b7..00000000000 --- a/reactos/drivers/input/mouclass/makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = mouclass - -TARGET_CFLAGS = -D__USE_32API -Wall -Werror - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/input/mouclass/mouclass.xml b/reactos/drivers/input/mouclass/mouclass.xml new file mode 100644 index 00000000000..71418e4da21 --- /dev/null +++ b/reactos/drivers/input/mouclass/mouclass.xml @@ -0,0 +1,8 @@ + + . + + ntoskrnl + hal + mouclass.c + mouclass.rc + diff --git a/reactos/drivers/input/sermouse/makefile b/reactos/drivers/input/sermouse/makefile deleted file mode 100644 index 764964ab8fd..00000000000 --- a/reactos/drivers/input/sermouse/makefile +++ /dev/null @@ -1,18 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = sermouse - -TARGET_OBJECTS = \ - sermouse.o - -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror - -#mouse.o - Old Serial mouse driver - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/input/sermouse/sermouse.xml b/reactos/drivers/input/sermouse/sermouse.xml new file mode 100644 index 00000000000..648dadeed40 --- /dev/null +++ b/reactos/drivers/input/sermouse/sermouse.xml @@ -0,0 +1,8 @@ + + . + + ntoskrnl + hal + sermouse.c + sermouse.rc + diff --git a/reactos/drivers/lib/bzip2/Makefile b/reactos/drivers/lib/bzip2/Makefile deleted file mode 100644 index 4bd32b6356e..00000000000 --- a/reactos/drivers/lib/bzip2/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = export_driver - -TARGET_NAME = unbzip2 - -TARGET_NORC = yes - -TARGET_CFLAGS = \ - -Wall -Winline -Os -fomit-frame-pointer -fno-strength-reduce \ - -DBZ_NO_STDIO -DBZ_DECOMPRESS_ONLY $(BIGFILES) -g -Werror -D__USE_W32API \ - -finline-limit=1000 - -TARGET_OBJECTS = \ - bzlib.o \ - randtable.o \ - crctable.o \ - decompress.o \ - huffman.o \ - dllmain.o - -TARGET_GCCLIBS = gcc - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -test.exe: test.o ../../dk/w32/lib/unbzip2.a - $(CC) -s -Os -o test.exe test.o ../../dk/w32/lib/unbzip2.a - -test.o: test.c - $(CC) -s -Os -c test.c - -# EOF diff --git a/reactos/drivers/lib/bzip2/bzip2.xml b/reactos/drivers/lib/bzip2/bzip2.xml new file mode 100644 index 00000000000..fbec0f4210d --- /dev/null +++ b/reactos/drivers/lib/bzip2/bzip2.xml @@ -0,0 +1,15 @@ + + + + + + -lgcc + ntoskrnl + hal + bzlib.c + randtable.c + crctable.c + decompress.c + huffman.c + dllmain.c + diff --git a/reactos/drivers/lib/csq/MAKEFILE b/reactos/drivers/lib/csq/MAKEFILE deleted file mode 100644 index 58189757d61..00000000000 --- a/reactos/drivers/lib/csq/MAKEFILE +++ /dev/null @@ -1,7 +0,0 @@ -# -# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source -# file to this component. This file merely indirects to the real make file -# that is shared by all the driver components of the Windows NT DDK -# - -!INCLUDE $(NTMAKEENV)\makefile.def diff --git a/reactos/drivers/lib/csq/csq.xml b/reactos/drivers/lib/csq/csq.xml new file mode 100644 index 00000000000..dce463afffd --- /dev/null +++ b/reactos/drivers/lib/csq/csq.xml @@ -0,0 +1,3 @@ + + csq.c + diff --git a/reactos/drivers/lib/directory.xml b/reactos/drivers/lib/directory.xml new file mode 100644 index 00000000000..33afc93d0da --- /dev/null +++ b/reactos/drivers/lib/directory.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/drivers/lib/ip/ip.xml b/reactos/drivers/lib/ip/ip.xml new file mode 100644 index 00000000000..893574ef7ad --- /dev/null +++ b/reactos/drivers/lib/ip/ip.xml @@ -0,0 +1,45 @@ + + + + + drivers/net/tcpip/include + drivers/lib/oskittcp/include + + + + checksum.S + + + address.c + arp.c + checksum.c + icmp.c + interface.c + ip.c + loopback.c + memtrack.c + neighbor.c + ports.c + receive.c + router.c + routines.c + transmit.c + + + + datagram.c + + + rawip.c + + + accept.c + event.c + if.c + tcp.c + + + udp.c + + + diff --git a/reactos/drivers/lib/ip/makefile b/reactos/drivers/lib/ip/makefile deleted file mode 100644 index 6a19a0dc29d..00000000000 --- a/reactos/drivers/lib/ip/makefile +++ /dev/null @@ -1,54 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = library - -TARGET_NAME = ip - -TARGET_PCH = $(PATH_TO_TOP)/drivers/lib/ip/include/precomp.h - -# -DMEMTRACK -TARGET_CFLAGS = \ - -D__USE_W32API \ - -D__NTDRIVER__ \ - -D_SEH_NO_NATIVE_NLG \ - -Wall -Werror \ - -Iinclude \ - -I../../net/tcpip/include \ - -I../undis/include \ - -I../oskittcp/include - -TARGET_CLEAN = network/*.o - -TARGET_OBJECTS = \ - network/address.o \ - network/arp.o \ - network/checksum.o \ - transport/datagram/datagram.o \ - network/i386/checksum.o \ - network/icmp.o \ - network/interface.o \ - network/ip.o \ - network/loopback.o \ - network/memtrack.o \ - network/neighbor.o \ - network/ports.o \ - network/receive.o \ - network/router.o \ - network/routines.o \ - network/transmit.o \ - transport/rawip/rawip.o \ - transport/tcp/accept.o \ - transport/tcp/event.o \ - transport/tcp/if.o \ - transport/tcp/tcp.o \ - transport/udp/udp.o - -preall: all - -$(TARGET_OBJECTS):: makefile - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/lib/oskittcp/makefile b/reactos/drivers/lib/oskittcp/makefile deleted file mode 100644 index c58e44db5ac..00000000000 --- a/reactos/drivers/lib/oskittcp/makefile +++ /dev/null @@ -1,86 +0,0 @@ - - -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = library - -TARGET_NAME = oskittcp - -#-DMEMTRACK - -# require os code to explicitly request A/W version of structs/functions -TARGET_ASFLAGS = -I $(PATH_TO_TOP)/include - -TARGET_LFLAGS = -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 \ - -nostartfiles -nostdlib \ - -TARGET_GCCLIBS = gcc - -TARGET_BASE = 0x79f60000 - -TARGET_PATH = - -REACTOS_OBJECTS = \ - oskittcp/defaults.o \ - oskittcp/in.o \ - oskittcp/in_cksum.o \ - oskittcp/in_pcb.o \ - oskittcp/in_proto.o \ - oskittcp/in_rmx.o \ - oskittcp/inet_ntoa.o \ - oskittcp/interface.o \ - oskittcp/ip_input.o \ - oskittcp/ip_output.o \ - oskittcp/kern_clock.o \ - oskittcp/kern_subr.o \ - oskittcp/param.o \ - oskittcp/radix.o \ - oskittcp/random.o \ - oskittcp/raw_cb.o \ - oskittcp/raw_ip.o \ - oskittcp/raw_usrreq.o \ - oskittcp/route.o \ - oskittcp/rtsock.o \ - oskittcp/scanc.o \ - oskittcp/sleep.o \ - oskittcp/tcp_input.o \ - oskittcp/tcp_output.o \ - oskittcp/tcp_subr.o \ - oskittcp/tcp_usrreq.o \ - oskittcp/tcp_debug.o \ - oskittcp/tcp_timer.o \ - oskittcp/uipc_domain.o \ - oskittcp/uipc_mbuf.o \ - oskittcp/uipc_socket.o \ - oskittcp/uipc_socket2.o - -TARGET_OBJECTS = $(FREEBSD_OBJECTS) $(REACTOS_OBJECTS) -DEP_OBJECTS = $(TARGET_OBJECTS) - -TARGET_CFLAGS += -D__REACTOS__=1 -D__NTDRIVER__ -DKERNEL -I./include/freebsd -I./include/freebsd/sys/include -I./include/freebsd/src/sys -I./include/freebsd/dev/include -I./include/freebsd/net/include -I./include - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: csr/TAGS dbg/TAGS ldr/TAGS main/TAGS rtl/TAGS stdio/TAGS stdlib/TAGS string/TAGS stubs/TAGS - etags -i csr/TAGS -i dbg/TAGS -i ldr/TAGS -i main/TAGS -i rtl/TAGS -i stdio/TAGS -i stdlib/TAGS -i string/TAGS -i stubs/TAGS - - -docu: - doxygen Doxyfile - -.PHONY: docu - - -# EOF diff --git a/reactos/drivers/lib/oskittcp/oskittcp.xml b/reactos/drivers/lib/oskittcp/oskittcp.xml new file mode 100644 index 00000000000..48069b0ef27 --- /dev/null +++ b/reactos/drivers/lib/oskittcp/oskittcp.xml @@ -0,0 +1,46 @@ + + 1 + + + + drivers/lib/oskittcp/include/freebsd + drivers/lib/oskittcp/include/freebsd/sys/include + drivers/lib/oskittcp/include/freebsd/src/sys + drivers/lib/oskittcp/include/freebsd/dev/include + drivers/lib/oskittcp/include/freebsd/net/include + drivers/lib/oskittcp/include + + defaults.c + in.c + in_cksum.c + in_pcb.c + in_proto.c + in_rmx.c + inet_ntoa.c + interface.c + ip_input.c + ip_output.c + kern_clock.c + kern_subr.c + param.c + radix.c + random.c + raw_cb.c + raw_ip.c + raw_usrreq.c + route.c + rtsock.c + scanc.c + sleep.c + tcp_input.c + tcp_output.c + tcp_subr.c + tcp_usrreq.c + tcp_debug.c + tcp_timer.c + uipc_domain.c + uipc_mbuf.c + uipc_socket.c + uipc_socket2.c + + diff --git a/reactos/drivers/net/afd/afd.def b/reactos/drivers/net/afd/afd.def deleted file mode 100644 index c83c3a9e031..00000000000 --- a/reactos/drivers/net/afd/afd.def +++ /dev/null @@ -1,7 +0,0 @@ -; Ancillary Function Driver - ReactOS Operating System - -LIBRARY AFDTEST.SYS - -EXPORTS - -; EOF diff --git a/reactos/drivers/net/afd/afd.xml b/reactos/drivers/net/afd/afd.xml new file mode 100644 index 00000000000..629e93d291a --- /dev/null +++ b/reactos/drivers/net/afd/afd.xml @@ -0,0 +1,26 @@ + + include + include/afd + + pseh + ntoskrnl + hal + + afd.h + + + bind.c + connect.c + context.c + info.c + listen.c + lock.c + main.c + read.c + select.c + tdi.c + tdiconn.c + write.c + + afd.rc + diff --git a/reactos/drivers/net/afd/makefile b/reactos/drivers/net/afd/makefile deleted file mode 100644 index bc7269e045a..00000000000 --- a/reactos/drivers/net/afd/makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = driver - -TARGET_NAME = afd - -TARGET_PCH = include/afd.h - -TARGET_LIBS = \ - $(PATH_TO_TOP)/dk/w32/lib/libpseh.a - -TARGET_CFLAGS = -I./include -I$(PATH_TO_TOP)/w32api/include/ddk -I$(PATH_TO_TOP)/include/afd -D__USE_W32API -Werror -Wall - -TARGET_OBJECTS = \ - afd/bind.o \ - afd/connect.o \ - afd/context.o \ - afd/info.o \ - afd/listen.o \ - afd/lock.o \ - afd/main.o \ - afd/read.o \ - afd/select.o \ - afd/tdi.o \ - afd/tdiconn.o \ - afd/write.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/dd/directory.xml b/reactos/drivers/net/dd/directory.xml new file mode 100644 index 00000000000..44def278345 --- /dev/null +++ b/reactos/drivers/net/dd/directory.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/reactos/drivers/net/dd/ne2000/Makefile b/reactos/drivers/net/dd/ne2000/Makefile deleted file mode 100644 index 258b9c49b10..00000000000 --- a/reactos/drivers/net/dd/ne2000/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = driver - -TARGET_NAME = ne2000 - -TARGET_CFLAGS = -I./include -D__USE_W32API -Werror -Wall - -TARGET_OBJECTS = \ - ne2000/8390.o \ - ne2000/main.o - -TARGET_DDKLIBS = ndis.a - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/dd/ne2000/ne2000.xml b/reactos/drivers/net/dd/ne2000/ne2000.xml new file mode 100644 index 00000000000..376aae4e84a --- /dev/null +++ b/reactos/drivers/net/dd/ne2000/ne2000.xml @@ -0,0 +1,12 @@ + + include + + ndis + ntoskrnl + hal + + 8390.c + main.c + + ne2000.rc + diff --git a/reactos/drivers/net/dd/pcnet/Makefile b/reactos/drivers/net/dd/pcnet/Makefile deleted file mode 100644 index 2a51eae556d..00000000000 --- a/reactos/drivers/net/dd/pcnet/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -PATH_TO_TOP = ../../../.. -TARGET_TYPE = driver -TARGET_NAME = pcnet - -# -# - must define NDIS50 to get the right characteristics struct -# - must define anonymous unions to make physical addresses work right -# -TARGET_CFLAGS = -I. -Wall -Werror -DNDIS50_MINIPORT -TARGET_CFLAGS += -I$(W32API_PATH)/include/ddk -D__USE_W32API -# TARGET_CFLAGS += -DDBG=1 - -TARGET_OBJECTS = pcnet.o requests.o -TARGET_DDKLIBS = ndis.a -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/dd/pcnet/pcnet.xml b/reactos/drivers/net/dd/pcnet/pcnet.xml new file mode 100644 index 00000000000..5b516cf6c69 --- /dev/null +++ b/reactos/drivers/net/dd/pcnet/pcnet.xml @@ -0,0 +1,11 @@ + + . + + + ndis + ntoskrnl + hal + pcnet.c + requests.c + pcnet.rc + diff --git a/reactos/drivers/net/directory.xml b/reactos/drivers/net/directory.xml new file mode 100644 index 00000000000..1ce82d43e6c --- /dev/null +++ b/reactos/drivers/net/directory.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/net/ndis/Makefile b/reactos/drivers/net/ndis/Makefile deleted file mode 100644 index 0c26787150e..00000000000 --- a/reactos/drivers/net/ndis/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = export_driver - -TARGET_NAME = ndis - -TARGET_PCH = include/ndissys.h - -TARGET_CFLAGS = -I./include -D__USE_W32API -Wall -Werror - -TARGET_CFLAGS += -DNDIS_WRAPPER -DNDIS50 -DNDIS50_MINIPORT -DBINARY_COMPATIBLE - -TARGET_OBJECTS = \ - ndis/main.o \ - ndis/40gone.o \ - ndis/50gone.o \ - ndis/buffer.o \ - ndis/cl.o \ - ndis/cm.o \ - ndis/co.o \ - ndis/config.o \ - ndis/control.o \ - ndis/hardware.o \ - ndis/io.o \ - ndis/memory.o \ - ndis/miniport.o \ - ndis/protocol.o \ - ndis/string.o \ - ndis/stubs.o \ - ndis/time.o \ - ndis/efilter.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/ndis/ndis.xml b/reactos/drivers/net/ndis/ndis.xml new file mode 100644 index 00000000000..059891d0f13 --- /dev/null +++ b/reactos/drivers/net/ndis/ndis.xml @@ -0,0 +1,35 @@ + + + include + + + + + + ntoskrnl + hal + + ndissys.h + + + 40gone.c + 50gone.c + buffer.c + cl.c + cm.c + co.c + config.c + control.c + efilter.c + hardware.c + io.c + main.c + memory.c + miniport.c + protocol.c + string.c + stubs.c + time.c + + ndis.rc + diff --git a/reactos/drivers/net/npf/Makefile b/reactos/drivers/net/npf/Makefile deleted file mode 100644 index 075056c5f2c..00000000000 --- a/reactos/drivers/net/npf/Makefile +++ /dev/null @@ -1,38 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -#TARGET_TYPE = export_driver -TARGET_TYPE = driver - -TARGET_NAME = npf - -#TARGET_CFLAGS = -D__USE_W32API -D_TIMEVAL_DEFINED -DDBG -DWIN_NT_DRIVER -DKQPC_TS -I$(PATH_TO_TOP)/ntoskrnl/include - -TARGET_CFLAGS = -D__USE_W32API -D_TIMEVAL_DEFINED -DDBG -DWIN_NT_DRIVER -DKQPC_TS -DUSE_KLOCKS -I$(PATH_TO_TOP)/ntoskrnl/include -Wall -Werror - -TARGET_DDKLIBS = ndis.a - -TARGET_OBJECTS = \ - packet.o \ - openclos.o \ - read.o \ - write.o \ - dump.o \ - jitter.o \ - win_bpf_filter.o \ - tme.o \ - count_packets.o \ - win_bpf_filter_init.o \ - tcp_session.o \ - memory_t.o \ - time_calls.o \ - functions.o \ - bucket_lookup.o \ - normal_lookup.o - -TARGET_PATH = . - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/npf/npf.xml b/reactos/drivers/net/npf/npf.xml new file mode 100644 index 00000000000..0a5119fe9aa --- /dev/null +++ b/reactos/drivers/net/npf/npf.xml @@ -0,0 +1,30 @@ + + include + include + + + + + + + ndis + ntoskrnl + hal + bucket_lookup.c + count_packets.c + dump.c + functions.c + jitter.c + memory_t.c + normal_lookup.c + openclos.c + packet.c + read.c + tcp_session.c + time_calls.c + tme.c + win_bpf_filter.c + win_bpf_filter_init.c + write.c + npf.rc + diff --git a/reactos/drivers/net/tcpip/makefile b/reactos/drivers/net/tcpip/makefile deleted file mode 100644 index 903b1863f84..00000000000 --- a/reactos/drivers/net/tcpip/makefile +++ /dev/null @@ -1,78 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_REGTESTS = yes - -TARGET_TYPE = export_driver - -TARGET_NAME = tcpip - -TARGET_PCH = include/precomp.h - -# -DMEMTRACK -TARGET_CFLAGS = \ - -D__USE_W32API \ - -D_SEH_NO_NATIVE_NLG \ - -DNDIS40 \ - -Wall -Werror \ - -I./include \ - -I$(PATH_TO_TOP)/drivers/lib/oskittcp/include \ - -I$(PATH_TO_TOP)/w32api/include \ - -I$(PATH_TO_TOP)/include - -TARGET_LIBS = \ - $(PATH_TO_TOP)/dk/w32/lib/libip.a \ - $(PATH_TO_TOP)/dk/w32/lib/liboskittcp.a \ - $(PATH_TO_TOP)/dk/w32/lib/librosrtl.a \ - $(PATH_TO_TOP)/dk/w32/lib/libpseh.a \ - $(PATH_TO_TOP)/dk/nkm/lib/libndis.a - -TARGET_CLEAN = tcpip/*.o datalink/*.o \ - $(PATH_TO_TOP)/dk/w32/lib/libip.a \ - $(PATH_TO_TOP)/dk/w32/lib/liboskittcp.a - -TCPIP_OBJECTS = tcpip/buffer.o \ - tcpip/dispatch.o \ - tcpip/fileobjs.o \ - tcpip/irp.o \ - tcpip/main.o \ - tcpip/pool.o \ - tcpip/proto.o \ - tcpip/lock.o \ - tcpip/wait.o \ - tcpip/bug.o -INFO_OBJECTS = tcpip/info.o tcpip/ninfo.o tcpip/tinfo.o tcpip/iinfo.o -DATALINK_OBJECTS = datalink/lan.o -MOCKOBJS = tcpip/mockbuffer.o \ - tcpip/mockwait.o \ - tcpip/mocklock.o \ - tcpip/mockpool.o \ - tcpip/mockbug.o - -TARGET_OBJECTS = \ - $(TCPIP_OBJECTS) \ - $(INFO_OBJECTS) \ - $(DATALINK_OBJECTS) - -preall: preclean - $(MAKE) -C ../../lib/ip - $(MAKE) -C ../../lib/oskittcp - $(MAKE) all - $(MAKE) $(MOCKOBJS) - -preclean: - $(RM) $(PATH_TO_TOP)/dk/w32/lib/libip.a \ - $(PATH_TO_TOP)/dk/w32/lib/liboskittcp.a - -$(PATH_TO_TOP)/dk/w32/lib/liboskittcp.a: - $(MAKE) -C $(PATH_TO_TOP)/drivers/lib/oskittcp - -$(PATH_TO_TOP)/dk/w32/lib/libip.a: - $(MAKE) -C $(PATH_TO_TOP)/drivers/lib/ip - -$(TARGET_OBJECTS):: makefile - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/tcpip/tcpip.xml b/reactos/drivers/net/tcpip/tcpip.xml new file mode 100644 index 00000000000..96664aa5459 --- /dev/null +++ b/reactos/drivers/net/tcpip/tcpip.xml @@ -0,0 +1,38 @@ + + + include + include + + + + ip + oskittcp + ndis + rosrtl + pseh + ntoskrnl + hal + + precomp.h + + + lan.c + + + buffer.c + bug.c + dispatch.c + fileobjs.c + iinfo.c + info.c + irp.c + lock.c + main.c + ninfo.c + pool.c + proto.c + tinfo.c + wait.c + + tcpip.rc + diff --git a/reactos/drivers/net/tcpip/tcpip/main.c b/reactos/drivers/net/tcpip/tcpip/main.c index 7320dce043c..bd2d6d94623 100644 --- a/reactos/drivers/net/tcpip/tcpip/main.c +++ b/reactos/drivers/net/tcpip/tcpip/main.c @@ -872,8 +872,6 @@ DriverEntry( DueTime.QuadPart = -(LONGLONG)IP_TIMEOUT * 10000; KeSetTimerEx(&IPTimer, DueTime, IP_TIMEOUT, &IPTimeoutDpc); - PREPARE_TESTS - return STATUS_SUCCESS; } diff --git a/reactos/drivers/net/tdi/Makefile b/reactos/drivers/net/tdi/Makefile deleted file mode 100644 index d3827708afb..00000000000 --- a/reactos/drivers/net/tdi/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = export_driver - -TARGET_CFLAGS = -Werror -Wall - -TARGET_NAME = tdi - -TARGET_OBJECTS = \ - ne2000/8390.o \ - ne2000/main.o - -OBJECTS_CTE = \ - cte/string.o \ - cte/stubs.o - -OBJECTS_MISC = \ - misc/main.o - -OBJECTS_TDI = \ - tdi/dereg.o \ - tdi/handler.o \ - tdi/obsolete.o \ - tdi/stubs.o - -TARGET_OBJECTS = \ - $(OBJECTS_CTE) \ - $(OBJECTS_MISC) \ - $(OBJECTS_TDI) - -TARGET_CLEAN = \ - cte/*.o \ - misc/*.o \ - misc/*.coff \ - tdi/*.o - -TARGET_PATH = misc - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/tdi/tdi.xml b/reactos/drivers/net/tdi/tdi.xml new file mode 100644 index 00000000000..c4bd343309f --- /dev/null +++ b/reactos/drivers/net/tdi/tdi.xml @@ -0,0 +1,19 @@ + + + ntoskrnl + hal + + string.c + stubs.c + + + main.c + tdi.rc + + + dereg.c + handler.c + obsolete.c + stubs.c + + diff --git a/reactos/drivers/net/wshtcpip/makefile b/reactos/drivers/net/wshtcpip/makefile deleted file mode 100644 index d89d8cd9074..00000000000 --- a/reactos/drivers/net/wshtcpip/makefile +++ /dev/null @@ -1,19 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = wshtcpip - -TARGET_BASE = 0x777c0000 - -TARGET_CFLAGS = -DUNICODE -D__USE_W32API -Werror -Wall - -TARGET_SDKLIBS = ntdll.a kernel32.a ws2_32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/net/wshtcpip/wshtcpip.xml b/reactos/drivers/net/wshtcpip/wshtcpip.xml new file mode 100644 index 00000000000..52d86b081f5 --- /dev/null +++ b/reactos/drivers/net/wshtcpip/wshtcpip.xml @@ -0,0 +1,11 @@ + + + . + + + ntdll + kernel32 + ws2_32 + wshtcpip.c + wshtcpip.rc + diff --git a/reactos/drivers/storage/atapi/atapi.xml b/reactos/drivers/storage/atapi/atapi.xml new file mode 100644 index 00000000000..0da47ba870f --- /dev/null +++ b/reactos/drivers/storage/atapi/atapi.xml @@ -0,0 +1,9 @@ + + + . + ntoskrnl + hal + scsiport + atapi.c + atapi.rc + diff --git a/reactos/drivers/storage/atapi/makefile b/reactos/drivers/storage/atapi/makefile deleted file mode 100644 index 197f99d4eda..00000000000 --- a/reactos/drivers/storage/atapi/makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = atapi - -TARGET_DDKLIBS = scsiport.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/cdrom/cdrom.xml b/reactos/drivers/storage/cdrom/cdrom.xml new file mode 100644 index 00000000000..4cb23c80998 --- /dev/null +++ b/reactos/drivers/storage/cdrom/cdrom.xml @@ -0,0 +1,8 @@ + + + ntoskrnl + hal + class2 + cdrom.c + cdrom.rc + diff --git a/reactos/drivers/storage/cdrom/makefile b/reactos/drivers/storage/cdrom/makefile deleted file mode 100644 index 396f3b78349..00000000000 --- a/reactos/drivers/storage/cdrom/makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = cdrom - -TARGET_DDKLIBS = class2.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/class2/class2.xml b/reactos/drivers/storage/class2/class2.xml new file mode 100644 index 00000000000..f6bb6ace0bf --- /dev/null +++ b/reactos/drivers/storage/class2/class2.xml @@ -0,0 +1,8 @@ + + + + ntoskrnl + hal + class2.c + class2.rc + diff --git a/reactos/drivers/storage/class2/makefile b/reactos/drivers/storage/class2/makefile deleted file mode 100644 index 11206582c5b..00000000000 --- a/reactos/drivers/storage/class2/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = export_driver - -TARGET_NAME = class2 - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/directory.xml b/reactos/drivers/storage/directory.xml new file mode 100644 index 00000000000..73c9c30abbb --- /dev/null +++ b/reactos/drivers/storage/directory.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/drivers/storage/disk/disk.xml b/reactos/drivers/storage/disk/disk.xml new file mode 100644 index 00000000000..f485138ce76 --- /dev/null +++ b/reactos/drivers/storage/disk/disk.xml @@ -0,0 +1,9 @@ + + + -lgcc + ntoskrnl + hal + class2 + disk.c + disk.rc + diff --git a/reactos/drivers/storage/disk/makefile b/reactos/drivers/storage/disk/makefile deleted file mode 100644 index f4b42bb125b..00000000000 --- a/reactos/drivers/storage/disk/makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = driver - -TARGET_NAME = disk - -TARGET_DDKLIBS = class2.a - -TARGET_GCCLIBS = gcc - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/diskdump/Makefile b/reactos/drivers/storage/diskdump/Makefile deleted file mode 100644 index d04d7b2c5c1..00000000000 --- a/reactos/drivers/storage/diskdump/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = export_driver - -TARGET_NAME = diskdump - -TARGET_DDKLIBS = - -TARGET_OBJECTS = $(TARGET_NAME).o diskdump_helper.o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/diskdump/diskdump.xml b/reactos/drivers/storage/diskdump/diskdump.xml new file mode 100644 index 00000000000..22816ebbcd2 --- /dev/null +++ b/reactos/drivers/storage/diskdump/diskdump.xml @@ -0,0 +1,10 @@ + + + + ntoskrnl + hal + class2 + diskdump.c + diskdump_helper.S + diskdump.rc + diff --git a/reactos/drivers/storage/floppy/Makefile b/reactos/drivers/storage/floppy/Makefile deleted file mode 100644 index 7fea2396cea..00000000000 --- a/reactos/drivers/storage/floppy/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# ReactOS Floppy Driver -# Copyright (C) 2004, Vizzini (vizzini@plasmic.com) -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -# -# PROJECT: ReactOS Floppy Driver -# FILE: Makefile -# PURPOSE: Makefile for Microsoft DDK build system -# PROGRAMMER: Vizzini (vizzini@plasmic.com) -# REVISIONS: -# 15-Feb-2004 vizzini - Created/ -# -# MAKEFILE for ARTICLE -# -# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source -# file to this component. This file merely indirects to the real make file -# that is shared by all the driver components of the Windows NT DDK -# - -!INCLUDE $(NTMAKEENV)\makefile.def diff --git a/reactos/drivers/storage/floppy/floppy.xml b/reactos/drivers/storage/floppy/floppy.xml new file mode 100644 index 00000000000..6be2bdc993c --- /dev/null +++ b/reactos/drivers/storage/floppy/floppy.xml @@ -0,0 +1,13 @@ + + + . + ntoskrnl + hal + csq + csqrtns.c + floppy.c + hardware.c + ioctl.c + readwrite.c + floppy.rc + diff --git a/reactos/drivers/storage/scsiport/makefile b/reactos/drivers/storage/scsiport/makefile deleted file mode 100644 index 9ac1e94d69e..00000000000 --- a/reactos/drivers/storage/scsiport/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = export_driver - -TARGET_NAME = scsiport - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_CFLAGS = -Werror -Wall - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/drivers/storage/scsiport/scsiport.xml b/reactos/drivers/storage/scsiport/scsiport.xml new file mode 100644 index 00000000000..7f6dc63d34b --- /dev/null +++ b/reactos/drivers/storage/scsiport/scsiport.xml @@ -0,0 +1,9 @@ + + + + . + ntoskrnl + hal + scsiport.c + scsiport.rc + diff --git a/reactos/drivers/video/directory.xml b/reactos/drivers/video/directory.xml new file mode 100644 index 00000000000..c4675000265 --- /dev/null +++ b/reactos/drivers/video/directory.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/reactos/drivers/video/displays/directory.xml b/reactos/drivers/video/displays/directory.xml new file mode 100644 index 00000000000..1e767bc23d4 --- /dev/null +++ b/reactos/drivers/video/displays/directory.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/reactos/drivers/video/displays/framebuf/framebuf.xml b/reactos/drivers/video/displays/framebuf/framebuf.xml new file mode 100644 index 00000000000..f99fa2f8a8f --- /dev/null +++ b/reactos/drivers/video/displays/framebuf/framebuf.xml @@ -0,0 +1,14 @@ + + + . + + ntoskrnl + hal + win32k + enable.c + palette.c + pointer.c + screen.c + surface.c + framebuf.rc + diff --git a/reactos/drivers/video/displays/framebuf/makefile b/reactos/drivers/video/displays/framebuf/makefile deleted file mode 100644 index c7853912b31..00000000000 --- a/reactos/drivers/video/displays/framebuf/makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../../.. - -TARGET_BASE = 0x70000000 - -TARGET_TYPE = gdi_driver - -TARGET_NAME = framebuf - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -TARGET_OBJECTS = \ - enable.o \ - palette.o \ - pointer.o \ - screen.o \ - surface.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS = $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/drivers/video/displays/vga/makefile b/reactos/drivers/video/displays/vga/makefile deleted file mode 100644 index 74ef000d977..00000000000 --- a/reactos/drivers/video/displays/vga/makefile +++ /dev/null @@ -1,47 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../../.. - -TARGET_BASE = 0x70000000 - -TARGET_TYPE = gdi_driver - -TARGET_NAME = vgaddi - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API - -MAIN_OBJECTS = \ - main/enable.o - -OTHER_OBJECTS = \ - objects/screen.o \ - objects/pointer.o \ - objects/lineto.o \ - objects/paint.o \ - objects/bitblt.o \ - objects/transblt.o \ - objects/offscreen.o \ - objects/copybits.o - -VGAVIDEO_OBJECTS = \ - vgavideo/vgavideo.o - -TARGET_OBJECTS = \ - $(MAIN_OBJECTS) \ - $(OTHER_OBJECTS) \ - $(VGAVIDEO_OBJECTS) - -TARGET_CLEAN = \ - main/*.o \ - objects/*.o \ - vgavideo/*.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/drivers/video/displays/vga/objects/copybits.c b/reactos/drivers/video/displays/vga/objects/copybits.c index 7485c1ef37b..2b32604ca53 100644 --- a/reactos/drivers/video/displays/vga/objects/copybits.c +++ b/reactos/drivers/video/displays/vga/objects/copybits.c @@ -1,7 +1,5 @@ #include "../vgaddi.h" #include "../vgavideo/vgavideo.h" - -#define DBG #include BOOL STDCALL diff --git a/reactos/drivers/video/displays/vga/vgaddi.xml b/reactos/drivers/video/displays/vga/vgaddi.xml new file mode 100644 index 00000000000..403a30e1997 --- /dev/null +++ b/reactos/drivers/video/displays/vga/vgaddi.xml @@ -0,0 +1,25 @@ + + + . + + ntoskrnl + hal + win32k + + enable.c + + + screen.c + pointer.c + lineto.c + paint.c + bitblt.c + transblt.c + offscreen.c + copybits.c + + + vgavideo.c + + vgaddi.rc + diff --git a/reactos/drivers/video/miniport/directory.xml b/reactos/drivers/video/miniport/directory.xml new file mode 100644 index 00000000000..0f30110cdec --- /dev/null +++ b/reactos/drivers/video/miniport/directory.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/reactos/drivers/video/miniport/vbe/makefile b/reactos/drivers/video/miniport/vbe/makefile deleted file mode 100644 index 1a1da1cb05f..00000000000 --- a/reactos/drivers/video/miniport/vbe/makefile +++ /dev/null @@ -1,16 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = driver - -TARGET_NAME = vbemp - -TARGET_DDKLIBS = videoprt.a ntoskrnl.a - -TARGET_CFLAGS = -Werror -Wall -I$(PATH_TO_TOP)/ntoskrnl/include -D__USE_W32API - -TARGET_OBJECTS = \ - vbemp.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/video/miniport/vbe/vbemp.xml b/reactos/drivers/video/miniport/vbe/vbemp.xml new file mode 100644 index 00000000000..eca3ef1cb68 --- /dev/null +++ b/reactos/drivers/video/miniport/vbe/vbemp.xml @@ -0,0 +1,10 @@ + + . + include + + ntoskrnl + hal + videoprt + vbemp.c + vbemp.rc + diff --git a/reactos/drivers/video/miniport/vga/makefile b/reactos/drivers/video/miniport/vga/makefile deleted file mode 100644 index 4fc9e7efc12..00000000000 --- a/reactos/drivers/video/miniport/vga/makefile +++ /dev/null @@ -1,19 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = driver - -TARGET_NAME = vgamp - -TARGET_DDKLIBS = videoprt.a - -TARGET_CFLAGS = -Werror -Wall -D__USE_W32API - -TARGET_OBJECTS = \ - initvga.o \ - vgamp.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/drivers/video/miniport/vga/vgamp.xml b/reactos/drivers/video/miniport/vga/vgamp.xml new file mode 100644 index 00000000000..d452fc3ae98 --- /dev/null +++ b/reactos/drivers/video/miniport/vga/vgamp.xml @@ -0,0 +1,11 @@ + + . + include + + ntoskrnl + hal + videoprt + initvga.c + vgamp.c + vgamp.rc + diff --git a/reactos/drivers/video/miniport/xboxvmp/Makefile b/reactos/drivers/video/miniport/xboxvmp/Makefile deleted file mode 100644 index 36bf6d4a2c3..00000000000 --- a/reactos/drivers/video/miniport/xboxvmp/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -PATH_TO_TOP = ../../../.. - -TARGET_TYPE = driver - -TARGET_NAME = xboxvmp - -TARGET_DDKLIBS = videoprt.a ntoskrnl.a - -TARGET_CFLAGS = -Werror -Wall -I$(PATH_TO_TOP)/ntoskrnl/include -D__USE_W32API - -TARGET_OBJECTS = \ - xboxvmp.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/drivers/video/miniport/xboxvmp/xboxvmp.xml b/reactos/drivers/video/miniport/xboxvmp/xboxvmp.xml new file mode 100644 index 00000000000..94b1aae6d5c --- /dev/null +++ b/reactos/drivers/video/miniport/xboxvmp/xboxvmp.xml @@ -0,0 +1,10 @@ + + . + include + + ntoskrnl + hal + videoprt + xboxvmp.c + xboxvmp.rc + diff --git a/reactos/drivers/video/videoprt/Makefile b/reactos/drivers/video/videoprt/Makefile deleted file mode 100644 index 68b83b0da9e..00000000000 --- a/reactos/drivers/video/videoprt/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = export_driver - -TARGET_NAME = videoprt - -TARGET_CFLAGS += -Wall -Werror -D__USE_W32API -I$(PATH_TO_TOP)/ntoskrnl/include - -TARGET_OBJECTS = \ - agp.o \ - ddc.o \ - dispatch.o \ - dma.o \ - event.o \ - int10.o \ - interrupt.o \ - videoprt.o \ - resource.o \ - services.o \ - spinlock.o \ - timer.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/drivers/video/videoprt/videoprt.xml b/reactos/drivers/video/videoprt/videoprt.xml new file mode 100644 index 00000000000..e334ba7299d --- /dev/null +++ b/reactos/drivers/video/videoprt/videoprt.xml @@ -0,0 +1,21 @@ + + + . + include + + ntoskrnl + hal + agp.c + ddc.c + dispatch.c + dma.c + event.c + int10.c + interrupt.c + resource.c + services.c + spinlock.c + timer.c + videoprt.c + videoprt.rc + diff --git a/reactos/hal/directory.xml b/reactos/hal/directory.xml new file mode 100644 index 00000000000..8dcfa6d6c35 --- /dev/null +++ b/reactos/hal/directory.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/reactos/hal/hal/Makefile b/reactos/hal/hal/Makefile deleted file mode 100644 index 37a438f023f..00000000000 --- a/reactos/hal/hal/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = driver_library - -TARGET_ASFLAGS = -D__NTHAL__ -I$(PATH_TO_TOP)/ntoskrnl/include - -TARGET_CFLAGS = -D__NTHAL__ -I$(PATH_TO_TOP)/ntoskrnl/include -Werror -Wall - -TARGET_NAME = hal - -HEADER_FILES = $(PATH_TO_TOP)/include/roscfg.h - -TARGET_OBJECTS := $(TARGET_NAME).o $(HEADER_FILES) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/config.mk - -# EOF diff --git a/reactos/hal/hal/hal.c b/reactos/hal/hal/hal.c index a28d5c9e6b0..38af3f9a8b3 100644 --- a/reactos/hal/hal/hal.c +++ b/reactos/hal/hal/hal.c @@ -357,13 +357,23 @@ HalProcessorIdle(VOID) } +BOOLEAN +STDCALL +HalQueryDisplayOwnership(VOID) +{ + UNIMPLEMENTED; + + return FALSE; +} + + VOID STDCALL HalQueryDisplayParameters( - PULONG DispSizeX, - PULONG DispSizeY, - PULONG CursorPosX, - PULONG CursorPosY) + OUT PULONG DispSizeX, + OUT PULONG DispSizeY, + OUT PULONG CursorPosX, + OUT PULONG CursorPosY) { UNIMPLEMENTED; } @@ -389,6 +399,13 @@ HalReadDmaCounter( } +VOID +STDCALL +HalReleaseDisplayOwnership(VOID) +{ + UNIMPLEMENTED; +} + VOID STDCALL HalReportResourceUsage(VOID) @@ -406,6 +423,15 @@ HalRequestIpi( } +VOID +FASTCALL +HalRequestSoftwareInterrupt( + KIRQL Request) +{ + UNIMPLEMENTED; +} + + VOID STDCALL HalReturnToFirmware( @@ -621,6 +647,17 @@ KdPortInitialize( } +BOOLEAN +STDCALL +KdPortInitializeEx( + PKD_PORT_INFORMATION PortInformation, + DWORD Unknown1, + DWORD Unknown2) +{ + UNIMPLEMENTED; +} + + BOOLEAN STDCALL KdPortPollByte( diff --git a/reactos/hal/hal/hal.xml b/reactos/hal/hal/hal.xml new file mode 100644 index 00000000000..547e7f63b3b --- /dev/null +++ b/reactos/hal/hal/hal.xml @@ -0,0 +1,7 @@ + + + include + ntoskrnl + hal.c + hal.rc + diff --git a/reactos/hal/halx86/directory.xml b/reactos/hal/halx86/directory.xml new file mode 100644 index 00000000000..ba8d4a74e0d --- /dev/null +++ b/reactos/hal/halx86/directory.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/hal/halx86/generic/adapter.c b/reactos/hal/halx86/generic/adapter.c index 5debe5d853c..80df33e4f17 100644 --- a/reactos/hal/halx86/generic/adapter.c +++ b/reactos/hal/halx86/generic/adapter.c @@ -19,6 +19,9 @@ #include #include +/* Hmm, needed for KDBG := 1. Why? */ +#undef KeGetCurrentIrql + /* FUNCTIONS *****************************************************************/ /* NOTE: IoAllocateAdapterChannel in NTOSKRNL.EXE */ diff --git a/reactos/hal/halx86/generic/generic.xml b/reactos/hal/halx86/generic/generic.xml new file mode 100644 index 00000000000..e71223aa871 --- /dev/null +++ b/reactos/hal/halx86/generic/generic.xml @@ -0,0 +1,43 @@ + + ../include + include + + + adapter.c + beep.c + bus.c + dma.c + drive.c + enum.c + fmutex.c + halinit.c + isa.c + kdbg.c + mca.c + misc.c + pci.c + portio.c + reboot.c + spinlock.c + sysbus.c + sysinfo.c + time.c + timer.c + + + ../include + include + + + ipi.c + irql.c + processor.c + resource.c + + + ../include + include + + + display.c + diff --git a/reactos/hal/halx86/generic/spinlock.c b/reactos/hal/halx86/generic/spinlock.c index 553e51c9d94..6d02d7c1c47 100644 --- a/reactos/hal/halx86/generic/spinlock.c +++ b/reactos/hal/halx86/generic/spinlock.c @@ -21,6 +21,9 @@ #include +/* Hmm, needed for KDBG := 1. Why? */ +#undef KeGetCurrentIrql + /* FUNCTIONS ***************************************************************/ VOID STDCALL diff --git a/reactos/hal/halx86/mp/Makefile b/reactos/hal/halx86/mp/Makefile deleted file mode 100644 index 54c331e8ee3..00000000000 --- a/reactos/hal/halx86/mp/Makefile +++ /dev/null @@ -1,92 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -VPATH = ../generic - -default: all - -TARGET_NAME = halmp - -# -# Build configuration -# -include $(PATH_TO_TOP)/rules.mak - -# -# Global configuration -# -include $(TOOLS_PATH)/config.mk - -TARGET_TYPE = hal - -TARGET_DEFNAME = ../../hal/hal - -TARGET_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/ntoskrnl/include -D__ASM__ -DCONFIG_SMP - -TARGET_CFLAGS = -I../include -I$(PATH_TO_TOP)/ntoskrnl/include -Wall -Werror -DCONFIG_SMP - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ifneq ($(CONFIG_SMP), 1) -TARGET_INSTALL = no -else -TARGET_BOOTSTRAP = yes -endif - -GENERIC_OBJECTS = \ - adapter.o \ - beep.o \ - bus.o \ - display.o \ - dma.o \ - drive.o \ - enum.o \ - fmutex.o \ - halinit.o \ - isa.o \ - kdbg.o \ - mca.o \ - misc.o \ - pci.o \ - portio.o \ - reboot.o \ - spinlock.o \ - sysbus.o \ - sysinfo.o \ - time.o \ - timer.o - -MP_OBJECTS = \ - apic.o \ - halinit_mp.o \ - ioapic.o \ - ipi_mp.o \ - mpconfig.o \ - mpsirql.o \ - mpsboot.o \ - mps.o \ - processor_mp.o \ - resource_mp.o - -HAL_OBJECTS = $(GENERIC_OBJECTS) $(MP_OBJECTS) - -DEP_OBJECTS := $(HAL_OBJECTS) - -TARGET_OBJECTS := $(DEP_OBJECTS) $(PATH_TO_TOP)/include/roscfg.h - -# Note: Must be = and not := since $(DEP_FILES) is assigned a value below -TARGET_CLEAN = $(DEP_FILES) *.o *.dll - -# -# Helper makefile -# -include $(TOOLS_PATH)/helper.mk - -# -# Include automatic dependancy tracking -# -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/hal/halx86/mp/halmp.xml b/reactos/hal/halx86/mp/halmp.xml new file mode 100644 index 00000000000..6b2d2e1a354 --- /dev/null +++ b/reactos/hal/halx86/mp/halmp.xml @@ -0,0 +1,22 @@ + + + ../include + include + + + + hal_generic + hal_generic_pc + ntoskrnl + apic.c + halinit_mp.c + ioapic.c + ipi_mp.c + mpconfig.c + mps.S + mpsboot.asm + mpsirql.c + processor_mp.c + resource_mp.c + halmp.rc + diff --git a/reactos/hal/halx86/up/Makefile b/reactos/hal/halx86/up/Makefile deleted file mode 100644 index 779f90643c5..00000000000 --- a/reactos/hal/halx86/up/Makefile +++ /dev/null @@ -1,89 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -VPATH = ../generic - -default: all - -TARGET_NAME = halup - -# -# Build configuration -# -include $(PATH_TO_TOP)/rules.mak - -# -# Global configuration -# -include $(TOOLS_PATH)/config.mk - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = hal - -TARGET_DEFNAME = ../../hal/hal - -TARGET_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/ntoskrnl/include -D__ASM__ - -TARGET_CFLAGS = -I../include -I$(PATH_TO_TOP)/ntoskrnl/include -Wall -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ifeq ($(CONFIG_SMP), 1) -TARGET_INSTALL = no -else -TARGET_BOOTSTRAP = yes -endif - -GENERIC_OBJECTS = \ - adapter.o \ - beep.o \ - bus.o \ - display.o \ - dma.o \ - drive.o \ - enum.o \ - fmutex.o \ - halinit.o \ - ipi.o \ - irql.o \ - isa.o \ - kdbg.o \ - mca.o \ - misc.o \ - pci.o \ - portio.o \ - processor.o \ - reboot.o \ - resource.o \ - spinlock.o \ - sysbus.o \ - sysinfo.o \ - time.o \ - timer.o - -UP_OBJECTS = \ - halinit_up.o - -HAL_OBJECTS = $(GENERIC_OBJECTS) $(UP_OBJECTS) - -DEP_OBJECTS := $(HAL_OBJECTS) - -TARGET_OBJECTS := $(DEP_OBJECTS) $(PATH_TO_TOP)/include/roscfg.h - -# Note: Must be = and not := since $(DEP_FILES) is assigned a value below -TARGET_CLEAN = $(DEP_FILES) *.o *.dll - -# -# Helper makefile -# -include $(TOOLS_PATH)/helper.mk - -# -# Include automatic dependancy tracking -# -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/hal/halx86/up/halup.xml b/reactos/hal/halx86/up/halup.xml new file mode 100644 index 00000000000..6a849c6eced --- /dev/null +++ b/reactos/hal/halx86/up/halup.xml @@ -0,0 +1,14 @@ + + + + ../include + include + + + hal_generic + hal_generic_up + hal_generic_pc + ntoskrnl + halinit_up.c + halup.rc + diff --git a/reactos/hal/halx86/xbox/Makefile b/reactos/hal/halx86/xbox/Makefile deleted file mode 100644 index a07a6c5d377..00000000000 --- a/reactos/hal/halx86/xbox/Makefile +++ /dev/null @@ -1,89 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -VPATH = ../generic - -default: all - -TARGET_NAME = halxbox - -# -# Build configuration -# -include $(PATH_TO_TOP)/rules.mak - -# -# Global configuration -# -include $(TOOLS_PATH)/config.mk - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = hal - -TARGET_DEFNAME = ../../hal/hal - -TARGET_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/ntoskrnl/include -D__ASM__ -DUP - -TARGET_CFLAGS = -I../include -I$(PATH_TO_TOP)/ntoskrnl/include -Wall -Werror -DUP - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_INSTALL = no -TARGET_BOOTSTRAP = no - -GENERIC_OBJECTS = \ - adapter.o \ - beep.o \ - bus.o \ - dma.o \ - drive.o \ - enum.o \ - fmutex.o \ - halinit.o \ - ipi.o \ - irql.o \ - isa.o \ - kdbg.o \ - mca.o \ - misc.o \ - pci.o \ - portio.o \ - processor.o \ - reboot.o \ - resource.o \ - spinlock.o \ - sysbus.o \ - sysinfo.o \ - time.o \ - timer.o - -XBOX_OBJECTS = \ - display_xbox.o \ - font.o \ - halinit_xbox.o \ - part_xbox.o \ - pci_xbox.o - -HAL_OBJECTS = $(GENERIC_OBJECTS) $(XBOX_OBJECTS) - -DEP_OBJECTS := $(HAL_OBJECTS) - -TARGET_OBJECTS := $(DEP_OBJECTS) $(PATH_TO_TOP)/include/roscfg.h - -# Note: Must be = and not := since $(DEP_FILES) is assigned a value below -TARGET_CLEAN = $(DEP_FILES) *.o *.dll - -# -# Helper makefile -# -include $(TOOLS_PATH)/helper.mk - -# -# Include automatic dependancy tracking -# -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/hal/halx86/xbox/halxbox.xml b/reactos/hal/halx86/xbox/halxbox.xml new file mode 100644 index 00000000000..7543c045e3c --- /dev/null +++ b/reactos/hal/halx86/xbox/halxbox.xml @@ -0,0 +1,17 @@ + + + ../include + include + + + + hal_generic + hal_generic_up + ntoskrnl + display_xbox.c + font.c + halinit_xbox.c + part_xbox.c + pci_xbox.c + halxbox.rc + diff --git a/reactos/include/directory.xml b/reactos/include/directory.xml new file mode 100644 index 00000000000..10b4d1f4cc2 --- /dev/null +++ b/reactos/include/directory.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/include/funcs.h b/reactos/include/funcs.h index 73153e6d4cb..2fe6b34e005 100644 --- a/reactos/include/funcs.h +++ b/reactos/include/funcs.h @@ -4605,7 +4605,7 @@ AccessCheck( LPBOOL AccessStatus ); -#ifndef __NTDRIVER__ +#if !defined(__NTDRIVER__) LONG STDCALL InterlockedIncrement( diff --git a/reactos/include/idl/idl.xml b/reactos/include/idl/idl.xml new file mode 100644 index 00000000000..3febc40eb56 --- /dev/null +++ b/reactos/include/idl/idl.xml @@ -0,0 +1,24 @@ + + . + w32api/include + + pnp.idl + + + . + w32api/include + + pnp.idl + + + . + w32api/include + + svcctl.idl + + + . + w32api/include + + svcctl.idl + diff --git a/reactos/include/wine/config.h b/reactos/include/wine/config.h index 7af4b57da4e..d195a7cc0e3 100644 --- a/reactos/include/wine/config.h +++ b/reactos/include/wine/config.h @@ -493,7 +493,7 @@ #define HAVE_SIZE_T 1 /* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 +/* #undef HAVE_SNPRINTF */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SOCKET_H */ @@ -517,7 +517,7 @@ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strcasecmp' function. */ -#define HAVE_STRCASECMP 1 +/* #undef HAVE_STRCASECMP */ /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 @@ -529,7 +529,7 @@ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strncasecmp' function. */ -#define HAVE_STRNCASECMP 1 +/* #undef HAVE_STRNCASECMP */ /* Define to 1 if `msg_accrights' is member of `struct msghdr'. */ /* #undef HAVE_STRUCT_MSGHDR_MSG_ACCRIGHTS */ diff --git a/reactos/lib/acledit/Makefile b/reactos/lib/acledit/Makefile deleted file mode 100644 index 1c3d283a92c..00000000000 --- a/reactos/lib/acledit/Makefile +++ /dev/null @@ -1,45 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = acledit - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_ACLEDIT) - -TARGET_CFLAGS = \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a user32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = acledit.o stubs.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/acledit/acledit.xml b/reactos/lib/acledit/acledit.xml new file mode 100644 index 00000000000..aaed4ff9abd --- /dev/null +++ b/reactos/lib/acledit/acledit.xml @@ -0,0 +1,14 @@ + + + . + + + + ntdll + kernel32 + advapi32 + user32 + acledit.c + stubs.c + acledit.rc + diff --git a/reactos/lib/aclui/Makefile b/reactos/lib/aclui/Makefile deleted file mode 100644 index 74752d22073..00000000000 --- a/reactos/lib/aclui/Makefile +++ /dev/null @@ -1,49 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = aclui - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_ACLUI) - -TARGET_CFLAGS = \ - -I./include \ - -D__USE_W32API \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D_WIN32_IE=0x0500 \ - -D_WIN32_WINNT=0x501 \ - -DWINVER=0x600 \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a rosrtl.a kernel32.a comctl32.a user32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = aclui.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/aclui/aclui.xml b/reactos/lib/aclui/aclui.xml new file mode 100644 index 00000000000..e2c6a6a9467 --- /dev/null +++ b/reactos/lib/aclui/aclui.xml @@ -0,0 +1,18 @@ + + + . + + + + + 0x0500 + 0x501 + 0x0600 + rosrtl + ntdll + kernel32 + user32 + comctl32 + aclui.c + aclui.rc + diff --git a/reactos/lib/adns/Makefile b/reactos/lib/adns/Makefile deleted file mode 100644 index 8ec3a99f615..00000000000 --- a/reactos/lib/adns/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = adns - -TARGET_CFLAGS = \ - -O3 -Wall -Wwrite-strings -Wpointer-arith \ - -Wstrict-prototypes -Wmissing-prototypes -Wall -DADNS_JGAA_WIN32 -D__USE_W32API -D__REACTOS__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -Isrc -Iadns_win32 - -TARGET_OBJECTS = adns_win32/adns_unix_calls.o \ - src/check.o src/event.o src/general.o src/parse.o src/poll.o \ - src/query.o src/reply.o src/setup.o src/transmit.o src/types.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/adns/adns.xml b/reactos/lib/adns/adns.xml new file mode 100644 index 00000000000..4e34e94efdd --- /dev/null +++ b/reactos/lib/adns/adns.xml @@ -0,0 +1,21 @@ + + src + adns_win32 + + + + adns_unix_calls.c + + + check.c + event.c + general.c + parse.c + poll.c + query.c + reply.c + setup.c + transmit.c + types.c + + diff --git a/reactos/lib/advapi32/advapi32.xml b/reactos/lib/advapi32/advapi32.xml new file mode 100644 index 00000000000..e7d5b0beaf6 --- /dev/null +++ b/reactos/lib/advapi32/advapi32.xml @@ -0,0 +1,52 @@ + + + . + include/idl + + 0x600 + 0x0500 + 0x0501 + scm_client + ntdll + kernel32 + rpcrt4 + advapi32.h + + crypt.c + crypt_des.c + crypt_lmhash.c + crypt_md4.c + crypt_md5.c + crypt_sha.c + + + dllmain.c + hwprofiles.c + logon.c + shutdown.c + sysfunc.c + + + reg.c + + + ac.c + audit.c + lsa.c + misc.c + sec.c + sid.c + trustee.c + + + eventlog.c + scm.c + sctrl.c + undoc.c + + + privilege.c + token.c + + advapi32.rc + diff --git a/reactos/lib/advapi32/makefile b/reactos/lib/advapi32/makefile deleted file mode 100644 index 9e25e2750a9..00000000000 --- a/reactos/lib/advapi32/makefile +++ /dev/null @@ -1,84 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = advapi32 - -TARGET_PCH = advapi32.h - -TARGET_CFLAGS = -Wall -Werror -fno-builtin \ - -D__USE_W32API \ - -D_WIN32_IE=0x0500 \ - -D_WIN32_WINNT=0x501 \ - -DWINVER=0x600 \ - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a rpcrt4.a - -TARGET_BASE = $(TARGET_BASE_LIB_ADVAPI32) - -CRYPT_OBJECTS = \ - crypt/crypt_des.o \ - crypt/crypt_lmhash.o \ - crypt/crypt_md4.o \ - crypt/crypt_md5.o \ - crypt/crypt_sha.o \ - crypt/crypt.o - -MISC_OBJECTS = \ - misc/dllmain.o \ - misc/hwprofiles.o \ - misc/logon.o \ - misc/shutdown.o \ - misc/sysfunc.o \ - -REGISTRY_OBJECTS = \ - reg/reg.o - -SECURITY_OBJECTS = \ - sec/ac.o \ - sec/audit.o \ - sec/lsa.o \ - sec/misc.o \ - sec/sec.o \ - sec/sid.o \ - sec/trustee.o - -SERVICE_OBJECTS = \ - service/svcctl_c.o \ - service/eventlog.o \ - service/scm.o \ - service/sctrl.o \ - service/undoc.o - -TOKEN_OBJECTS = \ - token/privilege.o \ - token/token.o - -TARGET_OBJECTS = \ - $(CRYPT_OBJECTS) \ - $(MISC_OBJECTS) \ - $(REGISTRY_OBJECTS) \ - $(SECURITY_OBJECTS) \ - $(SERVICE_OBJECTS) \ - $(TOKEN_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -TARGET_CLEAN = service/svcctl_c.c service/svcctl_c.h - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -WIDL_FLAGS = -o \ - -D _X86_ -D MIDL_PASS \ - -I $(PATH_TO_TOP)/w32api/include - -service/svcctl_c.c service/svcctl.h: $(PATH_TO_TOP)/include/idl/svcctl.idl - $(WIDL) $(WIDL_FLAGS) -h -H service/svcctl_c.h -c -C service/svcctl_c.c $(PATH_TO_TOP)/include/idl/svcctl.idl diff --git a/reactos/lib/advpack/Makefile b/reactos/lib/advpack/Makefile deleted file mode 100644 index ac18ebfd24b..00000000000 --- a/reactos/lib/advpack/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = advpack - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_ACLEDIT) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a gdi32.a advapi32.a ole32.a version.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = advpack.o stubs.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - diff --git a/reactos/lib/advpack/advpack.xml b/reactos/lib/advpack/advpack.xml new file mode 100644 index 00000000000..0032ccb216e --- /dev/null +++ b/reactos/lib/advpack/advpack.xml @@ -0,0 +1,20 @@ + + + . + + + + + 0x0600 + 0x501 + ntdll + kernel32 + user32 + gdi32 + advapi32 + ole32 + version + advpack.c + stubs.c + advpack.rc + diff --git a/reactos/lib/cabinet/Makefile b/reactos/lib/cabinet/Makefile deleted file mode 100644 index a2301a1f5ae..00000000000 --- a/reactos/lib/cabinet/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 7618 2004-01-14 01:47:46Z sedwards $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/cabinet/cabinet.xml b/reactos/lib/cabinet/cabinet.xml new file mode 100644 index 00000000000..d117463b22a --- /dev/null +++ b/reactos/lib/cabinet/cabinet.xml @@ -0,0 +1,23 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + advapi32 + iphlpapi + cabextract.c + cabinet_main.c + fci.c + fdi.c + cabinet.rc + cabinet.spec + diff --git a/reactos/lib/cards/Makefile b/reactos/lib/cards/Makefile deleted file mode 100644 index 7453c66d5f6..00000000000 --- a/reactos/lib/cards/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = cards - -TARGET_BASE = $(TARGET_BASE_LIB_CARDS) - -TARGET_CFLAGS = -fno-builtin -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -DUNICODE -D_UNICODE -Wall -Werror - -TARGET_LFLAGS = -nostdlib -nostartfiles - -TARGET_SDKLIBS = gdi32.a user32.a - -TARGET_OBJECTS = cards.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/cards/cards.xml b/reactos/lib/cards/cards.xml new file mode 100644 index 00000000000..5356271704b --- /dev/null +++ b/reactos/lib/cards/cards.xml @@ -0,0 +1,13 @@ + + + . + + + + ntdll + kernel32 + gdi32 + user32 + cards.c + cards.rc + diff --git a/reactos/lib/comctl32/comctl32.xml b/reactos/lib/comctl32/comctl32.xml new file mode 100644 index 00000000000..8fc1741f552 --- /dev/null +++ b/reactos/lib/comctl32/comctl32.xml @@ -0,0 +1,49 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + advapi32 + gdi32 + user32 + winmm + animate.c + comboex.c + comctl32undoc.c + commctrl.c + datetime.c + draglist.c + flatsb.c + header.c + hotkey.c + imagelist.c + ipaddress.c + listview.c + monthcal.c + nativefont.c + pager.c + progress.c + propsheet.c + rebar.c + smoothscroll.c + string.c + status.c + syslink.c + tab.c + toolbar.c + tooltips.c + trackbar.c + treeview.c + updown.c + rsrc.rc + comctl32.spec + diff --git a/reactos/lib/comctl32/makefile b/reactos/lib/comctl32/makefile deleted file mode 100644 index 263de228b36..00000000000 --- a/reactos/lib/comctl32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7409 2004-01-02 19:49:47Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/comdlg32/comdlg32.xml b/reactos/lib/comdlg32/comdlg32.xml new file mode 100644 index 00000000000..f361b8859ca --- /dev/null +++ b/reactos/lib/comdlg32/comdlg32.xml @@ -0,0 +1,34 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + advapi32 + gdi32 + user32 + comctl32 + shell32 + shlwapi + winspool + cdlg32.c + colordlg.c + filedlg.c + filedlg31.c + filedlgbrowser.c + filetitle.c + finddlg32.c + fontdlg.c + printdlg.c + rsrc.rc + comdlg32.spec + diff --git a/reactos/lib/comdlg32/makefile b/reactos/lib/comdlg32/makefile deleted file mode 100644 index ea934301c65..00000000000 --- a/reactos/lib/comdlg32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7520 2004-01-09 01:58:22Z sedwards $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/cpl/access/Makefile b/reactos/lib/cpl/access/Makefile deleted file mode 100644 index 8fcf87ca2ac..00000000000 --- a/reactos/lib/cpl/access/Makefile +++ /dev/null @@ -1,49 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = access - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_ACCESS) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = keyboard.o sound.o display.o mouse.o general.o access.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/access/access.xml b/reactos/lib/cpl/access/access.xml new file mode 100644 index 00000000000..f0710fa6b5b --- /dev/null +++ b/reactos/lib/cpl/access/access.xml @@ -0,0 +1,20 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + access.c + display.c + general.c + keyboard.c + mouse.c + sound.c + access.rc + diff --git a/reactos/lib/cpl/appwiz/Makefile b/reactos/lib/cpl/appwiz/Makefile deleted file mode 100644 index 7482b3bce64..00000000000 --- a/reactos/lib/cpl/appwiz/Makefile +++ /dev/null @@ -1,53 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = appwiz - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_APPWIZ) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = appwiz.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/appwiz/appwiz.xml b/reactos/lib/cpl/appwiz/appwiz.xml new file mode 100644 index 00000000000..e77908a0d4f --- /dev/null +++ b/reactos/lib/cpl/appwiz/appwiz.xml @@ -0,0 +1,15 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + appwiz.c + appwiz.rc + diff --git a/reactos/lib/cpl/control/Makefile b/reactos/lib/cpl/control/Makefile deleted file mode 100644 index c24a2ffad39..00000000000 --- a/reactos/lib/cpl/control/Makefile +++ /dev/null @@ -1,45 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_NAME = control - -TARGET_INSTALLDIR = system32 - -TARGET_APPTYPE = windows - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a comctl32.a - -# TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = control.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/control/control.xml b/reactos/lib/cpl/control/control.xml new file mode 100644 index 00000000000..49e5a9792f6 --- /dev/null +++ b/reactos/lib/cpl/control/control.xml @@ -0,0 +1,14 @@ + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + control.c + control.rc + diff --git a/reactos/lib/cpl/desk/Makefile b/reactos/lib/cpl/desk/Makefile deleted file mode 100644 index 6ee30dc9069..00000000000 --- a/reactos/lib/cpl/desk/Makefile +++ /dev/null @@ -1,55 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = desk - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_DESK) - -TARGET_CFLAGS = \ - -I./include \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -D__USE_W32API \ - -DUNICODE \ - -D_UNICODE \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a comdlg32.a advapi32.a gdi32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = desk.o \ - background.o \ - screensaver.o \ - appearance.o \ - settings.o \ - dibitmap.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/desk/desk.xml b/reactos/lib/cpl/desk/desk.xml new file mode 100644 index 00000000000..b03684cd93a --- /dev/null +++ b/reactos/lib/cpl/desk/desk.xml @@ -0,0 +1,22 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + advapi32 + gdi32 + comctl32 + comdlg32 + desk.c + background.c + screensaver.c + appearance.c + settings.c + dibitmap.c + diff --git a/reactos/lib/cpl/directory.xml b/reactos/lib/cpl/directory.xml new file mode 100644 index 00000000000..8bd40b9f665 --- /dev/null +++ b/reactos/lib/cpl/directory.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/lib/cpl/intl/intl.xml b/reactos/lib/cpl/intl/intl.xml new file mode 100644 index 00000000000..2ffa77ee084 --- /dev/null +++ b/reactos/lib/cpl/intl/intl.xml @@ -0,0 +1,21 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + currency.c + date.c + general.c + intl.c + locale.c + numbers.c + time.c + intl.rc + diff --git a/reactos/lib/cpl/intl/makefile b/reactos/lib/cpl/intl/makefile deleted file mode 100644 index ab8aa302669..00000000000 --- a/reactos/lib/cpl/intl/makefile +++ /dev/null @@ -1,50 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = intl - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_INTL) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -D__USE_W32API \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = currency.o date.o general.o intl.o locale.o numbers.o time.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/main/main.xml b/reactos/lib/cpl/main/main.xml new file mode 100644 index 00000000000..4b62fd2b500 --- /dev/null +++ b/reactos/lib/cpl/main/main.xml @@ -0,0 +1,17 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + keyboard.c + main.c + mouse.c + main.rc + diff --git a/reactos/lib/cpl/main/makefile b/reactos/lib/cpl/main/makefile deleted file mode 100644 index 0e5dc3e709c..00000000000 --- a/reactos/lib/cpl/main/makefile +++ /dev/null @@ -1,50 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = main - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_MAIN) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -D__USE_W32API \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = keyboard.o main.o mouse.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/ncpa/Makefile b/reactos/lib/cpl/ncpa/Makefile deleted file mode 100644 index 378d942728b..00000000000 --- a/reactos/lib/cpl/ncpa/Makefile +++ /dev/null @@ -1,50 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = ncpa - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_NCPA) - -TARGET_CFLAGS = \ - -I./include \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -D__USE_W32API \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a iphlpapi.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = ncpa.o tcpip_properties.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/ncpa/ncpa.xml b/reactos/lib/cpl/ncpa/ncpa.xml new file mode 100644 index 00000000000..ac1e406863a --- /dev/null +++ b/reactos/lib/cpl/ncpa/ncpa.xml @@ -0,0 +1,17 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + iphlpapi + ncpa.c + tcpip_properties.c + ncpa.rc + diff --git a/reactos/lib/cpl/sysdm/Makefile b/reactos/lib/cpl/sysdm/Makefile deleted file mode 100644 index 5dd087f6b93..00000000000 --- a/reactos/lib/cpl/sysdm/Makefile +++ /dev/null @@ -1,51 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = sysdm - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_SYSDM) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = sysdm.o general.o computer.o hardware.o advanced.o userprofile.o\ - environment.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/sysdm/sysdm.xml b/reactos/lib/cpl/sysdm/sysdm.xml new file mode 100644 index 00000000000..518bdec5162 --- /dev/null +++ b/reactos/lib/cpl/sysdm/sysdm.xml @@ -0,0 +1,21 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + advanced.c + computer.c + environment.c + general.c + hardware.c + sysdm.c + userprofile.c + sysdm.rc + diff --git a/reactos/lib/cpl/timedate/makefile b/reactos/lib/cpl/timedate/makefile deleted file mode 100644 index ca50b198fa4..00000000000 --- a/reactos/lib/cpl/timedate/makefile +++ /dev/null @@ -1,50 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_EXTENSION = .cpl - -TARGET_NAME = timedate - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_CPL_TIMEDATE) - -TARGET_CFLAGS = \ - -D_WIN32_IE=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -D__USE_W32API \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = kernel32.a user32.a comctl32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = timedate.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/cpl/timedate/timedate.xml b/reactos/lib/cpl/timedate/timedate.xml new file mode 100644 index 00000000000..ce9bb4d213c --- /dev/null +++ b/reactos/lib/cpl/timedate/timedate.xml @@ -0,0 +1,16 @@ + + + . + + + + + 0x600 + 0x501 + kernel32 + user32 + comctl32 + iphlpapi + timedate.c + timedate.rc + diff --git a/reactos/lib/crt/crt.xml b/reactos/lib/crt/crt.xml new file mode 100644 index 00000000000..cb231600e04 --- /dev/null +++ b/reactos/lib/crt/crt.xml @@ -0,0 +1,401 @@ + + . + include + + extern + + 0x600 + 0x501 + + + + + + precomp.h + + cgets.c + cprintf.c + cputs.c + getch.c + getche.c + kbhit.c + putch.c + ungetch.c + + + ctype.c + isalnum.c + isascii.c + iscntrl.c + isgraph.c + isprint.c + ispunct.c + isupper.c + isctype.c + + + chdir.c + chdrive.c + getcwd.c + getdcwd.c + getdfree.c + getdrive.c + mkdir.c + rmdir.c + wchdir.c + wgetcwd.c + wgetdcwd.c + wmkdir.c + wrmdir.c + + + abnorter.c + exhand2.c + matherr.c + seh.s + unwind.c + xcptfil.c + + + chgsign.c + clearfp.c + cntrlfp.c + copysign.c + fpclass.c + fpecode.c + fpreset.c + isnan.c + logb.c + nafter.c + scalb.c + statfp.c + + + access.c + chmod.c + chsize.c + close.c + commit.c + create.c + dup.c + dup2.c + eof.c + filelen.c + fileleni.c + find.c + fmode.c + isatty.c + locking.c + lseek.c + lseeki64.c + mktemp.c + open.c + pipe.c + read.c + setmode.c + sopen.c + stubs.c + tell.c + telli64.c + umask.c + unlink.c + utime.c + waccess.c + wchmod.c + wcreate.c + wfind.c + wmktemp.c + wopen.c + write.c + wunlink.c + wutime.c + + + locale.c + + + acos.c + adjust.c + asin.c + atan2.c + cabs.c + cosh.c + exp.c + fmod.c + frexp.c + huge_val.c + hypot.c + j0_y0.c + j1_y1.c + jn_yn.c + ldexp.c + log10.c + modf.c + pow.c + sinh.c + stubs.c + tanh.c + + + hanzen.c + ischira.c + iskana.c + iskmoji.c + iskpun.c + islead.c + islwr.c + ismbal.c + ismbaln.c + ismbc.c + ismbgra.c + ismbkaln.c + ismblead.c + ismbpri.c + ismbpun.c + ismbtrl.c + isuppr.c + jistojms.c + jmstojis.c + mbbtype.c + mbccpy.c + mbclen.c + mbscat.c + mbschr.c + mbscmp.c + mbscoll.c + mbscpy.c + mbscspn.c + mbsdec.c + mbsdup.c + mbsicmp.c + mbsicoll.c + mbsinc.c + mbslen.c + mbslwr.c + mbsncat.c + mbsnccnt.c + mbsncmp.c + mbsncoll.c + mbsncpy.c + mbsnextc.c + mbsnicmp.c + mbsnicoll.c + mbsninc.c + mbsnset.c + mbspbrk.c + mbsrchr.c + mbsrev.c + mbsset.c + mbsspn.c + mbsspnp.c + mbsstr.c + mbstok.c + mbstrlen.c + mbsupr.c + + + amsg.c + assert.c + crtmain.c + environ.c + getargs.c + initterm.c + lock.c + purecall.c + stubs.c + tls.c + + + _cwait.c + _system.c + dll.c + process.c + procid.c + thread.c + threadid.c + threadx.c + wprocess.c + + + lfind.c + lsearch.c + + + + setjmp.s + + + + signal.c + xcptinfo.c + + + allocfil.c + clearerr.c + fclose.c + fdopen.c + feof.c + ferror.c + fflush.c + fgetc.c + fgetchar.c + fgetpos.c + fgets.c + fgetws.c + filbuf.c + fileno.c + flsbuf.c + fopen.c + fprintf.c + fputc.c + fputchar.c + fputs.c + fputws.c + fread.c + freopen.c + fseek.c + fsetpos.c + fsopen.c + ftell.c + fwalk.c + fwprintf.c + fwrite.c + getc.c + getchar.c + gets.c + getw.c + perror.c + popen.c + printf.c + putc.c + putchar.c + puts.c + putw.c + putwchar.c + remove.c + rename.c + rewind.c + rmtmp.c + setbuf.c + setvbuf.c + sprintf.c + swprintf.c + stdhnd.c + tempnam.c + tmpfile.c + tmpnam.c + ungetc.c + ungetwc.c + vfprintf.c + vfwprint.c + vprintf.c + vsprintf.c + vswprintf.c + vwprintf.c + wfdopen.c + wfopen.c + wfreopen.c + wfsopen.c + wpopen.c + wprintf.c + wremove.c + wrename.c + wtempnam.c + wtmpnam.c + + + _exit.c + abort.c + atexit.c + atof.c + div.c + ecvt.c + ecvtbuf.c + errno.c + fcvt.c + fcvtbuf.c + fullpath.c + gcvt.c + getenv.c + ldiv.c + makepath.c + malloc.c + mbtowc.c + obsol.c + putenv.c + rand.c + rot.c + senv.c + strtod.c + strtoul.c + swab.c + wcstod.c + wcstombs.c + wctomb.c + wfulpath.c + wputenv.c + wsenv.c + wsplitp.c + wmakpath.c + + + lasttok.c + strcoll.c + strdup.c + strerror.c + strncoll.c + strpbrk.c + strrev.c + strset.c + strstr.c + strtok.c + strupr.c + strxfrm.c + + + fstat.c + fstati64.c + futime.c + stat.c + wstat.c + systime.c + + + clock.c + ctime.c + difftime.c + ftime.c + strdate.c + strftime.c + strtime.c + time.c + tz_vars.c + wctime.c + wstrdate.c + wstrtime.c + + + wcscoll.c + wcscspn.c + wcsdup.c + wcsicmp.c + wcslwr.c + wcsnicmp.c + wcspbrk.c + wcsrev.c + wcsset.c + wcsspn.c + wcsstr.c + wcstok.c + wcsupr.c + wcsxfrm.c + wlasttok.c + + + cpp.c + cppexcept.c + heap.c + scanf.c + thread.c + + diff --git a/reactos/lib/crt/makefile b/reactos/lib/crt/makefile deleted file mode 100644 index e95bdb073e5..00000000000 --- a/reactos/lib/crt/makefile +++ /dev/null @@ -1,487 +0,0 @@ -# $Id: Makefile 12852 2005-01-06 13:58:04Z mf $ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = library - -TARGET_NAME = crt - -TARGET_PCH = precomp.h - -TARGET_CFLAGS = -D_MSVCRT_LIB_ -D__MSVCRT__ -Wall -Werror -I./include - -#-nostdinc - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += \ - -D_DISABLE_TIDENTS \ - -D__MINGW_IMPORT=extern \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DUSE_MSVCRT_PREFIX \ - -D_MT - -CONIO_OBJECTS = \ - conio/cgets.o \ - conio/cprintf.o \ - conio/cputs.o \ - conio/getch.o \ - conio/getche.o \ - conio/kbhit.o \ - conio/putch.o \ - conio/ungetch.o - -CTYPE_OBJECTS = \ - ctype/ctype.o \ - ctype/isalnum.o \ - ctype/isalpha.o \ - ctype/isascii.o \ - ctype/iscntrl.o \ - ctype/isdigit.o \ - ctype/isgraph.o \ - ctype/islower.o \ - ctype/isprint.o \ - ctype/ispunct.o \ - ctype/isspace.o \ - ctype/isupper.o \ - ctype/isxdigit.o \ - ctype/toascii.o \ - ctype/tolower.o \ - ctype/toupper.o \ - ctype/iscsym.o \ - ctype/isctype.o - -DIRECT_OBJECTS = \ - direct/chdir.o \ - direct/chdrive.o \ - direct/getcwd.o \ - direct/getdcwd.o \ - direct/getdfree.o \ - direct/getdrive.o \ - direct/mkdir.o \ - direct/rmdir.o \ - direct/wchdir.o \ - direct/wgetcwd.o \ - direct/wgetdcwd.o \ - direct/wmkdir.o \ - direct/wrmdir.o - -EXCEPT_OBJECTS = \ - except/seh.o \ - except/abnorter.o \ - except/exhand2.o \ - except/matherr.o \ - except/unwind.o \ - except/xcptfil.o - -FLOAT_OBJECTS = \ - float/chgsign.o \ - float/clearfp.o \ - float/cntrlfp.o \ - float/copysign.o \ - float/fpclass.o \ - float/fpecode.o \ - float/fpreset.o \ - float/isnan.o \ - float/logb.o \ - float/nafter.o \ - float/scalb.o \ - float/statfp.o - -IO_OBJECTS = \ - io/access.o \ - io/chmod.o \ - io/chsize.o \ - io/close.o \ - io/commit.o \ - io/create.o \ - io/dup.o \ - io/dup2.o \ - io/eof.o \ - io/filelen.o \ - io/fileleni.o \ - io/find.o \ - io/fmode.o \ - io/isatty.o \ - io/locking.o \ - io/lseek.o \ - io/lseeki64.o \ - io/mktemp.o \ - io/open.o \ - io/pipe.o \ - io/read.o \ - io/setmode.o \ - io/sopen.o \ - io/stubs.o \ - io/tell.o \ - io/telli64.o \ - io/umask.o \ - io/unlink.o \ - io/utime.o \ - io/waccess.o \ - io/wchmod.o \ - io/wcreate.o \ - io/wfind.o \ - io/wmktemp.o \ - io/wopen.o \ - io/write.o \ - io/wunlink.o \ - io/wutime.o - -LOCALE_OBJECTS = \ - locale/locale.o - -MATH_OBJECTS = \ - math/acos.o \ - math/adjust.o \ - math/asin.o \ - math/atan.o \ - math/atan2.o \ - math/cabs.o \ - math/ceil.o \ - math/cos.o \ - math/cosh.o \ - math/exp.o \ - math/fabs.o \ - math/floor.o \ - math/fmod.o \ - math/frexp.o \ - math/huge_val.o \ - math/hypot.o \ - math/j0_y0.o \ - math/j1_y1.o \ - math/jn_yn.o \ - math/ldexp.o \ - math/log.o \ - math/log10.o \ - math/modf.o \ - math/pow.o \ - math/sin.o \ - math/sinh.o \ - math/sqrt.o \ - math/stubs.o \ - math/tan.o \ - math/tanh.o - -MBSTRING_OBJECTS = \ - mbstring/hanzen.o \ - mbstring/ischira.o \ - mbstring/iskana.o \ - mbstring/iskpun.o \ - mbstring/islead.o \ - mbstring/islwr.o \ - mbstring/ismbal.o \ - mbstring/ismbaln.o \ - mbstring/ismbc.o \ - mbstring/ismbgra.o \ - mbstring/ismbkaln.o \ - mbstring/ismblead.o \ - mbstring/ismbpri.o \ - mbstring/ismbpun.o \ - mbstring/ismbtrl.o \ - mbstring/isuppr.o \ - mbstring/jistojms.o \ - mbstring/jmstojis.o \ - mbstring/mbbtype.o \ - mbstring/mbccpy.o \ - mbstring/mbclen.o \ - mbstring/mbscat.o \ - mbstring/mbschr.o \ - mbstring/mbscmp.o \ - mbstring/mbscoll.o \ - mbstring/mbscpy.o \ - mbstring/mbscspn.o \ - mbstring/mbsdec.o \ - mbstring/mbsdup.o \ - mbstring/mbsicmp.o \ - mbstring/mbsicoll.o \ - mbstring/mbsinc.o \ - mbstring/mbslen.o \ - mbstring/mbslwr.o \ - mbstring/mbsncat.o \ - mbstring/mbsnccnt.o \ - mbstring/mbsncmp.o \ - mbstring/mbsncoll.o \ - mbstring/mbsncpy.o \ - mbstring/mbsnextc.o \ - mbstring/mbsnicmp.o \ - mbstring/mbsnicoll.o \ - mbstring/mbsninc.o \ - mbstring/mbsnset.o \ - mbstring/mbspbrk.o \ - mbstring/mbsrchr.o \ - mbstring/mbsrev.o \ - mbstring/mbsset.o \ - mbstring/mbsspn.o \ - mbstring/mbsspnp.o \ - mbstring/mbsstr.o \ - mbstring/mbstok.o \ - mbstring/mbstrlen.o \ - mbstring/mbsupr.o - -MISC_OBJECTS = \ - misc/amsg.o \ - misc/assert.o \ - misc/crtmain.o \ - misc/environ.o \ - misc/getargs.o \ - misc/initterm.o \ - misc/lock.o \ - misc/purecall.o \ - misc/stubs.o \ - misc/tls.o - -PROCESS_OBJECTS = \ - process/_cwait.o \ - process/_system.o \ - process/dll.o \ - process/process.o \ - process/wprocess.o \ - process/procid.o \ - process/thread.o \ - process/threadid.o \ - process/threadx.o - -SEARCH_OBJECTS = \ - search/lfind.o \ - search/lsearch.o - -SETJMP_OBJECTS = \ - setjmp/i386/setjmp.o - -SIGNAL_OBJECTS = \ - signal/signal.o \ - signal/xcptinfo.o - -STDIO_OBJECTS = \ - stdio/allocfil.o \ - stdio/clearerr.o \ - stdio/fclose.o \ - stdio/fdopen.o \ - stdio/feof.o \ - stdio/ferror.o \ - stdio/fflush.o \ - stdio/fgetc.o \ - stdio/fgetchar.o \ - stdio/fgetpos.o \ - stdio/fgets.o \ - stdio/fgetws.o \ - stdio/filbuf.o \ - stdio/fileno.o \ - stdio/flsbuf.o \ - stdio/fopen.o \ - stdio/wfopen.o \ - stdio/fprintf.o \ - stdio/fwprintf.o \ - stdio/fputc.o \ - stdio/fputchar.o \ - stdio/fputs.o \ - stdio/fputws.o \ - stdio/fread.o \ - stdio/freopen.o \ - stdio/wfreopen.o \ - stdio/fseek.o \ - stdio/fsetpos.o \ - stdio/fsopen.o \ - stdio/wfsopen.o \ - stdio/ftell.o \ - stdio/fwalk.o \ - stdio/fwrite.o \ - stdio/getc.o \ - stdio/getchar.o \ - stdio/gets.o \ - stdio/getw.o \ - stdio/perror.o \ - stdio/popen.o \ - stdio/wpopen.o \ - stdio/printf.o \ - stdio/wprintf.o \ - stdio/putc.o \ - stdio/putchar.o \ - stdio/putwchar.o \ - stdio/puts.o \ - stdio/putw.o \ - stdio/remove.o \ - stdio/wremove.o \ - stdio/rename.o \ - stdio/rewind.o \ - stdio/rmtmp.o \ - stdio/setbuf.o \ - stdio/setvbuf.o \ - stdio/sprintf.o \ - stdio/swprintf.o \ - stdio/stdhnd.o \ - stdio/tempnam.o \ - stdio/tmpfile.o \ - stdio/tmpnam.o \ - stdio/ungetc.o \ - stdio/ungetwc.o \ - stdio/vfprintf.o \ - stdio/vfwprint.o \ - stdio/vprintf.o \ - stdio/vwprintf.o \ - stdio/vsprintf.o \ - stdio/vswprintf.o \ - stdio/wfdopen.o \ - stdio/wrename.o \ - stdio/wtempnam.o \ - stdio/wtmpnam.o - -STDLIB_OBJECTS = \ - stdlib/_exit.o \ - stdlib/abort.o \ - stdlib/abs.o \ - stdlib/atexit.o \ - stdlib/atof.o \ - stdlib/atoi.o \ - stdlib/atoi64.o \ - stdlib/atol.o \ - stdlib/wtol.o \ - stdlib/bsearch.o \ - stdlib/div.o \ - stdlib/ecvt.o \ - stdlib/ecvtbuf.o \ - stdlib/errno.o \ - stdlib/fcvt.o \ - stdlib/fcvtbuf.o \ - stdlib/fullpath.o \ - stdlib/gcvt.o \ - stdlib/getenv.o \ - stdlib/itoa.o \ - stdlib/itow.o \ - stdlib/labs.o \ - stdlib/ldiv.o \ - stdlib/makepath.o \ - stdlib/malloc.o \ - stdlib/mbstowcs.o \ - stdlib/mbtowc.o \ - stdlib/obsol.o \ - stdlib/putenv.o \ - stdlib/qsort.o \ - stdlib/rand.o \ - stdlib/rot.o \ - stdlib/senv.o \ - stdlib/splitp.o \ - stdlib/strtod.o \ - stdlib/strtol.o \ - stdlib/strtoul.o \ - stdlib/swab.o \ - stdlib/wcstod.o \ - stdlib/wcstol.o \ - stdlib/wcstombs.o \ - stdlib/wcstoul.o \ - stdlib/wctomb.o \ - stdlib/wfulpath.o \ - stdlib/witoa.o \ - stdlib/witow.o \ - stdlib/wputenv.o \ - stdlib/wsenv.o \ - stdlib/wsplitp.o \ - stdlib/wmakpath.o \ - stdlib/wtoi.o \ - stdlib/wtoi64.o - -STRING_OBJECTS = \ - string/lasttok.o \ - string/memicmp.o \ - string/strcoll.o \ - string/strdup.o \ - string/strerror.o \ - string/stricmp.o \ - string/strlwr.o \ - string/strncoll.o \ - string/strnicmp.o \ - string/strpbrk.o \ - string/strrev.o\ - string/strset.o \ - string/strstr.o \ - string/strtok.o \ - string/strupr.o \ - string/strxfrm.o - -SYS_STAT_OBJECTS = \ - sys_stat/fstat.o \ - sys_stat/fstati64.o \ - sys_stat/futime.o \ - sys_stat/stat.o \ - sys_stat/wstat.o \ - sys_stat/systime.o - -TIME_OBJECTS = \ - time/clock.o \ - time/ctime.o \ - time/difftime.o \ - time/ftime.o \ - time/strdate.o \ - time/strftime.o \ - time/strtime.o \ - time/time.o \ - time/tz_vars.o \ - time/wctime.o \ - time/wstrdate.o \ - time/wstrtime.o - - - -WSTRING_OBJECTS = \ - wstring/wcscoll.o \ - wstring/wcscspn.o \ - wstring/wcsdup.o \ - wstring/wcsicmp.o \ - wstring/wcslwr.o \ - wstring/wcsnicmp.o \ - wstring/wcspbrk.o \ - wstring/wcsrev.o \ - wstring/wcsset.o \ - wstring/wcsspn.o \ - wstring/wcsstr.o \ - wstring/wcstok.o \ - wstring/wcsupr.o \ - wstring/wcsxfrm.o \ - wstring/wlasttok.o - -WINE_OBJECTS = \ - wine/cpp.o \ - wine/cppexcept.o \ - wine/heap.o \ - wine/thread.o \ - wine/scanf.o - -TARGET_OBJECTS = \ - $(CONIO_OBJECTS) \ - $(CTYPE_OBJECTS) \ - $(DIRECT_OBJECTS) \ - $(EXCEPT_OBJECTS) \ - $(FLOAT_OBJECTS) \ - $(IO_OBJECTS) \ - $(LOCALE_OBJECTS) \ - $(MATH_OBJECTS) \ - $(MBSTRING_OBJECTS) \ - $(MISC_OBJECTS) \ - $(PROCESS_OBJECTS) \ - $(SEARCH_OBJECTS) \ - $(SETJMP_OBJECTS) \ - $(SIGNAL_OBJECTS) \ - $(STDIO_OBJECTS) \ - $(STDLIB_OBJECTS) \ - $(STRING_OBJECTS) \ - $(SYS_STAT_OBJECTS) \ - $(TIME_OBJECTS) \ - $(WSTRING_OBJECTS) \ - $(WINE_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/lib/crt/stdio/sprintf.c b/reactos/lib/crt/stdio/sprintf.c index 1e35c0fb0f4..2913608cbda 100644 --- a/reactos/lib/crt/stdio/sprintf.c +++ b/reactos/lib/crt/stdio/sprintf.c @@ -32,7 +32,7 @@ Cambridge, MA 02139, USA. */ * @implemented */ int -_stprintf(_TCHAR *str, const _TCHAR *fmt, ...) +crt_sprintf(_TCHAR *str, const _TCHAR *fmt, ...) { va_list arg; int done; @@ -47,11 +47,8 @@ _stprintf(_TCHAR *str, const _TCHAR *fmt, ...) /* Write formatted output into S, according to the format string FORMAT, writing no more than MAXLEN characters. */ /* VARARGS3 */ -/* - * @implemented - */ int -_sntprintf (_TCHAR *s, size_t maxlen,const _TCHAR *format, ...) +crt__snprintf (_TCHAR *s, size_t maxlen,const _TCHAR *format, ...) { va_list arg; int done; diff --git a/reactos/lib/crt/stdio/swprintf.c b/reactos/lib/crt/stdio/swprintf.c index 81205d770ac..16a19269ec5 100644 --- a/reactos/lib/crt/stdio/swprintf.c +++ b/reactos/lib/crt/stdio/swprintf.c @@ -1,4 +1,60 @@ +/* Copyright (C) 1994 DJ Delorie, see COPYING.DJ for details */ + +/* Copyright (C) 1991, 1995 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + #define UNICODE #define _UNICODE +#include +#include +#include +#include +#include +#include -#include "sprintf.c" +#undef sprintf +#undef wsprintf + +int +crt_swprintf(_TCHAR *str, const _TCHAR *fmt, ...) +{ + va_list arg; + int done; + + va_start (arg, fmt); + done = _vstprintf (str, fmt, arg); + va_end (arg); + return done; +} + + +/* Write formatted output into S, according to the format + string FORMAT, writing no more than MAXLEN characters. */ +/* VARARGS3 */ +int +crt__snwprintf (_TCHAR *s, size_t maxlen,const _TCHAR *format, ...) +{ + va_list arg; + int done; + + va_start (arg, format); + done = _vsntprintf(s, maxlen, format, arg); + va_end (arg); + + return done; +} diff --git a/reactos/lib/crt/wine/scanf.c b/reactos/lib/crt/wine/scanf.c index f7d923251ee..185e16d4d9c 100644 --- a/reactos/lib/crt/wine/scanf.c +++ b/reactos/lib/crt/wine/scanf.c @@ -181,7 +181,7 @@ int wscanf(const wchar_t *format, ...) /********************************************************************* * sscanf (MSVCRT.@) */ -int sscanf(const char *str, const char *format, ...) +int crt_sscanf(const char *str, const char *format, ...) { va_list valist; int res; diff --git a/reactos/lib/crtdll/crtdll.def b/reactos/lib/crtdll/crtdll.def index f184df937a5..d463c84eddb 100644 --- a/reactos/lib/crtdll/crtdll.def +++ b/reactos/lib/crtdll/crtdll.def @@ -69,7 +69,7 @@ __argv_dll=__argv DATA __dllonexit __doserrno __fpecode -__isascii +__isascii=NTDLL.__isascii __iscsym=NTDLL.__iscsym __iscsymf=NTDLL.__iscsymf __mb_cur_max_dll=__mb_cur_max DATA @@ -309,8 +309,8 @@ _setjmp _setmode _setsystime _sleep -_snprintf -_snwprintf +_snprintf=crt__snprintf +_snwprintf=crt__snwprintf _sopen _spawnl _spawnle @@ -320,7 +320,7 @@ _spawnv _spawnve _spawnvp _spawnvpe -_splitpath +_splitpath=NTDLL._splitpath _stat=CRTDLL__stat _statusfp _strcmpi=NTDLL._strcmpi @@ -380,29 +380,29 @@ _y0 _y1 _yn abort -abs +abs=NTDLL.abs acos asctime asin -atan +atan=NTDLL.atan atan2 atexit atof -atoi -atol -bsearch +atoi=NTDLL.atoi +atol=NTDLL.atol +bsearch=NTDLL.bsearch calloc -ceil +ceil=NTDLL.ceil clearerr clock -cos +cos=NTDLL.cos cosh ctime difftime div exit exp -fabs +fabs=NTDLL.fabs fclose feof ferror @@ -411,7 +411,7 @@ fgetc fgetpos fgets fgetwc -floor +floor=NTDLL.floor fmod fopen fprintf @@ -435,42 +435,42 @@ getenv gets gmtime is_wctype -isalnum +isalnum=NTDLL.isalnum isalpha=NTDLL.isalpha -iscntrl +iscntrl=NTDLL.iscntrl isdigit=NTDLL.isdigit -isgraph +isgraph=NTDLL.isgraph isleadbyte islower=NTDLL.islower -isprint -ispunct +isprint=NTDLL.isprint +ispunct=NTDLL.ispunct isspace=NTDLL.isspace -isupper +isupper=NTDLL.isupper iswalnum iswalpha=NTDLL.iswalpha iswascii iswcntrl -iswctype -iswdigit +iswctype=NTDLL.iswctype +iswdigit=NTDLL.iswdigit iswgraph -iswlower +iswlower=NTDLL.iswlower iswprint iswpunct iswspace=NTDLL.iswspace iswupper -iswxdigit +iswxdigit=NTDLL.iswxdigit isxdigit=NTDLL.isxdigit -labs +labs=NTDLL.labs ldexp ldiv localeconv localtime -log +log=NTDLL.log log10 longjmp malloc mblen -mbstowcs +mbstowcs=NTDLL.mbstowcs mbtowc memchr=NTDLL.memchr memcmp=NTDLL.memcmp @@ -485,7 +485,7 @@ printf putc putchar puts -qsort +qsort=NTDLL.qsort raise rand realloc @@ -497,15 +497,15 @@ setbuf setlocale setvbuf signal -sin +sin=NTDLL.sin sinh -sprintf -sqrt +sprintf=crt_sprintf +sqrt=NTDLL.sqrt srand -sscanf +sscanf=crt_sscanf strcat strchr -strcmp +strcmp=NTDLL.strcmp strcoll strcpy strcspn @@ -521,21 +521,21 @@ strspn strstr=NTDLL.strstr strtod strtok -strtol +strtol=NTDLL.strtol strtoul strxfrm -swprintf +swprintf=crt_swprintf swscanf system -tan +tan=NTDLL.tan tanh time tmpfile tmpnam tolower=NTDLL.tolower toupper=NTDLL.toupper -towlower -towupper +towlower=NTDLL.towlower +towupper=NTDLL.towupper ungetc ungetwc vfprintf @@ -561,9 +561,9 @@ wcsspn wcsstr wcstod wcstok -wcstol +wcstol=NTDLL.wcstol wcstombs -wcstoul +wcstoul=NTDLL.wcstoul wcsxfrm wctomb wprintf diff --git a/reactos/lib/crtdll/crtdll.xml b/reactos/lib/crtdll/crtdll.xml new file mode 100644 index 00000000000..e94b903a678 --- /dev/null +++ b/reactos/lib/crtdll/crtdll.xml @@ -0,0 +1,21 @@ + + -nostartfiles + -lgcc + + . + include + + + 0x600 + 0x501 + + + + crt + string + kernel32 + ntdll + precomp.h + dllmain.c + crtdll.rc + diff --git a/reactos/lib/crtdll/makefile b/reactos/lib/crtdll/makefile deleted file mode 100644 index 010fd94b413..00000000000 --- a/reactos/lib/crtdll/makefile +++ /dev/null @@ -1,42 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = crtdll - -TARGET_PCH = precomp.h - -TARGET_BASE = $(TARGET_BASE_LIB_CRTDLL) - -# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports -RM_AT_FROM_SYMBOLS = no - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = crt.a string.a kernel32.a ntdll.a wine.a - -TARGET_GCCLIBS = gcc - -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror -I../crt/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += \ - -D_DISABLE_TIDENTS \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DUSE_MSVCRT_PREFIX \ - -D_MT - -TARGET_OBJECTS = dllmain.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/crtdll/stdio/vsprintf.c b/reactos/lib/crtdll/stdio/vsprintf.c index 13cda16d11a..cb6210aae4a 100644 --- a/reactos/lib/crtdll/stdio/vsprintf.c +++ b/reactos/lib/crtdll/stdio/vsprintf.c @@ -8,7 +8,7 @@ * @implemented */ int -vsprintf(char *str, const char *fmt, va_list ap) +crt_vsprintf(char *str, const char *fmt, va_list ap) { FILE f; int len; @@ -63,7 +63,7 @@ _vsnprintf(char *str, size_t maxlen, const char *fmt, va_list ap) * @implemented */ int -_vsnwprintf(wchar_t *str, size_t maxlen, const wchar_t *fmt, va_list ap) +crt__vsnwprintf(wchar_t *str, size_t maxlen, const wchar_t *fmt, va_list ap) { FILE f; int len; diff --git a/reactos/lib/dbghelp/Makefile b/reactos/lib/dbghelp/Makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/dbghelp/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/dbghelp/dbghelp.xml b/reactos/lib/dbghelp/dbghelp.xml new file mode 100644 index 00000000000..ccc8bc9d3a6 --- /dev/null +++ b/reactos/lib/dbghelp/dbghelp.xml @@ -0,0 +1,36 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + psapi + pseh + coff.c + dbghelp.c + elf_module.c + image.c + memory.c + minidump.c + module.c + msc.c + path.c + pe_module.c + regex.c + source.c + stabs.c + stack.c + storage.c + symbol.c + type.c + dbghelp.rc + dbghelp.spec + diff --git a/reactos/lib/devenum/devenum.xml b/reactos/lib/devenum/devenum.xml new file mode 100644 index 00000000000..9f10fed66e8 --- /dev/null +++ b/reactos/lib/devenum/devenum.xml @@ -0,0 +1,27 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + ole32 + oleaut32 + winmm + dxguid + strmiids + createdevenum.c + devenum_main.c + factory.c + mediacatenum.c + parsedisplayname.c + devenum.spec + diff --git a/reactos/lib/devenum/makefile b/reactos/lib/devenum/makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/devenum/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/dinput/Makefile b/reactos/lib/dinput/Makefile deleted file mode 100644 index be9c805c0ed..00000000000 --- a/reactos/lib/dinput/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 11864 2004-11-29 00:15:23Z greatlrd $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/dinput/dinput.xml b/reactos/lib/dinput/dinput.xml new file mode 100644 index 00000000000..97597398a67 --- /dev/null +++ b/reactos/lib/dinput/dinput.xml @@ -0,0 +1,30 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + user32 + advapi32 + ole32 + winmm + dxguid + data_formats.c + device.c + dinput_main.c + joystick_linux.c + joystick_linuxinput.c + keyboard.c + mouse.c + regsvr.c + dinput.spec + diff --git a/reactos/lib/dinput8/Makefile b/reactos/lib/dinput8/Makefile deleted file mode 100644 index 928654c8d4f..00000000000 --- a/reactos/lib/dinput8/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 11864 2004-11-29 00:15:23Z greatlrd $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/dinput8/dinput8.xml b/reactos/lib/dinput8/dinput8.xml new file mode 100644 index 00000000000..7a19a46c2e1 --- /dev/null +++ b/reactos/lib/dinput8/dinput8.xml @@ -0,0 +1,24 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + user32 + advapi32 + ole32 + winmm + dxguid + dinput + dinput8_main.c + dinput8.spec + diff --git a/reactos/lib/directory.xml b/reactos/lib/directory.xml new file mode 100644 index 00000000000..a8ce08f18df --- /dev/null +++ b/reactos/lib/directory.xml @@ -0,0 +1,291 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/lib/dnsapi/Makefile b/reactos/lib/dnsapi/Makefile deleted file mode 100644 index 39ebd4a63a1..00000000000 --- a/reactos/lib/dnsapi/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = dnsapi - -TARGET_BASE = $(TARGET_BASE_LIB_DNSAPI) - -TARGET_LFLAGS = -nostartfiles -g --kill-at - -DLLTOOL_ADD = -A - -TARGET_SDKLIBS = adns.a kernel32.a iphlpapi.a ws2_32.a msvcrt.a ntdll.a \ - rosrtl.a - -TARGET_GCCLIBS = gcc - -TARGET_CFLAGS = -Werror -Wall -I$(PATH_TO_TOP)/lib/adns/src -Iinclude \ - -I$(PATH_TO_TOP)/lib/adns/adns_win32 -g -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -DADNS_JGAA_WIN32 - -TARGET_OBJECTS = \ - dnsapi/context.o dnsapi/names.o dnsapi/query.o dnsapi/free.o \ - dnsapi/adns.o dnsapi/stubs.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/dnsapi/dnsapi.xml b/reactos/lib/dnsapi/dnsapi.xml new file mode 100644 index 00000000000..acb987c45ff --- /dev/null +++ b/reactos/lib/dnsapi/dnsapi.xml @@ -0,0 +1,26 @@ + + + include + src + adns_win32 + + + + adns + rosrtl + ntdll + kernel32 + user32 + msvcrt + ws2_32 + iphlpapi + + adns.c + context.c + free.c + names.c + query.c + stubs.c + + dnsapi.rc + diff --git a/reactos/lib/dsound/Makefile b/reactos/lib/dsound/Makefile deleted file mode 100644 index ea71955204c..00000000000 --- a/reactos/lib/dsound/Makefile +++ /dev/null @@ -1,30 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NORC = yes - -TARGET_NAME = dsound - -# -fno-builtin -TARGET_CFLAGS = -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_SDKLIBS = ntdll.a gdi32.a - -TARGET_BASE = $(TARGET_BASE_LIB_DSOUND) - -TARGET_OBJECTS = \ - dsound.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/dsound/dsound.xml b/reactos/lib/dsound/dsound.xml new file mode 100644 index 00000000000..e592d9d3082 --- /dev/null +++ b/reactos/lib/dsound/dsound.xml @@ -0,0 +1,8 @@ + + + . + + + kernel32 + dsound.c + diff --git a/reactos/lib/dxdiagn/dxdiagn.xml b/reactos/lib/dxdiagn/dxdiagn.xml new file mode 100644 index 00000000000..332b8ad2254 --- /dev/null +++ b/reactos/lib/dxdiagn/dxdiagn.xml @@ -0,0 +1,26 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + user32 + advapi32 + ole32 + dxguid + strmiids + container.c + dxdiag_main.c + provider.c + regsvr.c + dxdiagn.spec + diff --git a/reactos/lib/dxdiagn/makefile b/reactos/lib/dxdiagn/makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/dxdiagn/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/dxguid/dxguid.xml b/reactos/lib/dxguid/dxguid.xml new file mode 100644 index 00000000000..266c80f1cc1 --- /dev/null +++ b/reactos/lib/dxguid/dxguid.xml @@ -0,0 +1,5 @@ + + + + dxguid-mingw.c + diff --git a/reactos/lib/dxguid/makefile b/reactos/lib/dxguid/makefile deleted file mode 100644 index 368d42c95b0..00000000000 --- a/reactos/lib/dxguid/makefile +++ /dev/null @@ -1,26 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = library - -TARGET_NAME = dxguid - -TARGET_CFLAGS = -D__REACTOS__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Werror -Wall - -TARGET_LFLAGS = -Wl - -TARGET_OBJECTS = \ - dxguid-mingw.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF \ No newline at end of file diff --git a/reactos/lib/epsapi/epsapi.xml b/reactos/lib/epsapi/epsapi.xml new file mode 100644 index 00000000000..8f4043c3526 --- /dev/null +++ b/reactos/lib/epsapi/epsapi.xml @@ -0,0 +1,8 @@ + + + + drivers.c + modules.c + processes.c + + diff --git a/reactos/lib/epsapi/makefile b/reactos/lib/epsapi/makefile deleted file mode 100644 index 141e9a720a5..00000000000 --- a/reactos/lib/epsapi/makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = epsapi - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D__USE_W32API -D_DISABLE_TIDENTS -Werror -Wall - -TARGET_OBJECTS = \ - enum/drivers.o \ - enum/modules.o \ - enum/processes.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - diff --git a/reactos/lib/expat/Makefile b/reactos/lib/expat/Makefile deleted file mode 100644 index 0de7acdc0e0..00000000000 --- a/reactos/lib/expat/Makefile +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: Makefile 13593 2005-02-16 14:01:34Z weiden $ - -PATH_TO_TOP = ../.. - -include $(PATH_TO_TOP)/config - -TARGET_NAME = expat - -TARGET_TYPE = library - -TARGET_CFLAGS = -D__USE_W32API -DHAVE_EXPAT_CONFIG_H -Wall -Wmissing-prototypes -Wstrict-prototypes -fexceptions -Ilib -TARGET_LFLAGS = -nostartfiles - -LIB_OBJECTS = \ - lib/xmlparse.o \ - lib/xmlrole.o \ - lib/xmltok.o - -TARGET_OBJECTS = $(LIB_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/expat/expat.xml b/reactos/lib/expat/expat.xml new file mode 100644 index 00000000000..b02b396833b --- /dev/null +++ b/reactos/lib/expat/expat.xml @@ -0,0 +1,11 @@ + + . + lib + + + + xmlparse.c + xmlrole.c + xmltok.c + + diff --git a/reactos/lib/fmifs/fmifs.xml b/reactos/lib/fmifs/fmifs.xml new file mode 100644 index 00000000000..46a545a4176 --- /dev/null +++ b/reactos/lib/fmifs/fmifs.xml @@ -0,0 +1,18 @@ + + + . + + + vfatlib + ntdll + kernel32 + chkdsk.c + compress.c + diskcopy.c + extend.c + format.c + init.c + label.c + media.c + fmifs.rc + diff --git a/reactos/lib/fmifs/makefile b/reactos/lib/fmifs/makefile deleted file mode 100644 index b9ade2efe9f..00000000000 --- a/reactos/lib/fmifs/makefile +++ /dev/null @@ -1,42 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = fmifs - -TARGET_BASE = $(TARGET_BASE_LIB_FMIFS) - -TARGET_ENTRY = _InitializeFmIfs@12 - -TARGET_CFLAGS = -fno-builtin -Werror -Wall -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles - -TARGET_SDKLIBS = vfatlib.a ntdll.a kernel32.a - -TARGET_OBJECTS = \ - chkdsk.o \ - compress.o \ - diskcopy.o \ - extend.o \ - format.o \ - init.o \ - label.o \ - media.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -TARGET_FILES = misc/*.o - -# EOF diff --git a/reactos/lib/freetype/Makefile b/reactos/lib/freetype/Makefile deleted file mode 100644 index a4911830afc..00000000000 --- a/reactos/lib/freetype/Makefile +++ /dev/null @@ -1,67 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = kmdll - -TARGET_NAME = freetype - -TARGET_DEFONLY = yes - -include $(PATH_TO_TOP)/config - -ifeq ($(DBG), 1) -CFLAGS_DBG := -g -else -CFLAGS_DBG := -endif - -TARGET_CFLAGS = $(CFLAGS_DBG) -Iinclude -Wall -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ROS_OBJECTS = rosglue.o i386/setjmplongjmp.o - -TARGET_OBJECTS = objs/*.o $(ROS_OBJECTS) - -TARGET_CLEAN = objs/libfreetype.a - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -unexport CFLAGS - -all: $(MK_FULLNAME) $(MK_NOSTRIPNAME) - -objs/*.o objs/libfreetype.a: -ifeq ($(DBG), 1) - @$(MAKE) -f Makefile.freetype CFLAGS="-c -g -Wall -fno-strict-aliasing" CC:=$(CC) -else - @$(MAKE) -f Makefile.freetype CFLAGS="-c -Wall -O3 -fno-strict-aliasing" CC:=$(CC) -endif - -# Automatic dependency tracking -DEP_OBJECTS := $(ROS_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk - -freetype_def: objs/libfreetype.a - nm objs/libfreetype.a | gawk 'BEGIN { printf "LIBRARY freetype\r\nEXPORTS\r\n"; } 3 == NF && $$2 == "T" { printf "%s\r\n", substr($$3, 2, length($$3) - 2); }' > freetype.def - -.dummy: - -%/TAGS: .dummy - etags $(@D)/\*.c -o $(@D)/TAGS - -etags: TAGS -TAGS: i386/TAGS - - -docu: - doxygen Doxyfile - -.PHONY: docu - - -# EOF diff --git a/reactos/lib/freetype/freetype.xml b/reactos/lib/freetype/freetype.xml new file mode 100644 index 00000000000..823bed157be --- /dev/null +++ b/reactos/lib/freetype/freetype.xml @@ -0,0 +1,88 @@ + + + include + + + + ntoskrnl + hal + + setjmplongjmp.s + + + + ftsystem.c + ftdebug.c + ftinit.c + ftbase.c + ftbbox.c + ftbdf.c + ftglyph.c + ftmm.c + ftpfr.c + ftstroke.c + fttype1.c + ftwinfnt.c + ftxf86.c + + + autohint.c + + + bdf.c + + + ftcache.c + + + cff.c + + + type1cid.c + + + ftgzip.c + + + ftlzw.c + + + pcf.c + + + pfr.c + + + psaux.c + + + pshinter.c + + + psmodule.c + + + raster.c + + + sfnt.c + + + smooth.c + + + truetype.c + + + type1.c + + + type42.c + + + winfnt.c + + + rosglue.c + freetype.rc + diff --git a/reactos/lib/fslib/directory.xml b/reactos/lib/fslib/directory.xml new file mode 100644 index 00000000000..f4bfca2f609 --- /dev/null +++ b/reactos/lib/fslib/directory.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/lib/fslib/vfatlib/Makefile b/reactos/lib/fslib/vfatlib/Makefile deleted file mode 100755 index 54406031b86..00000000000 --- a/reactos/lib/fslib/vfatlib/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = library - -TARGET_NAME = vfatlib - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_OBJECTS = \ - fat12.o \ - fat16.o \ - fat32.o \ - vfatlib.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/fslib/vfatlib/vfatlib.xml b/reactos/lib/fslib/vfatlib/vfatlib.xml new file mode 100644 index 00000000000..ee8c53f3a8c --- /dev/null +++ b/reactos/lib/fslib/vfatlib/vfatlib.xml @@ -0,0 +1,8 @@ + + . + + fat12.c + fat16.c + fat32.c + vfatlib.c + diff --git a/reactos/lib/gdi32/gdi32.xml b/reactos/lib/gdi32/gdi32.xml new file mode 100644 index 00000000000..3fa8dd34f8a --- /dev/null +++ b/reactos/lib/gdi32/gdi32.xml @@ -0,0 +1,43 @@ + + + include + + + + 0x0600 + 0x0501 + ntdll + rosrtl + kernel32 + advapi32 + + precomp.h + + + dllmain.c + + + heap.c + misc.c + stubs.c + stubsa.c + stubsw.c + win32k.S + wingl.c + + + bitmap.c + brush.c + dc.c + font.c + linedda.c + metafile.c + region.c + text.c + utils.c + + -lgcc + -nostartfiles + -nostdlib + gdi32.rc + diff --git a/reactos/lib/gdi32/makefile b/reactos/lib/gdi32/makefile deleted file mode 100644 index 5d9751c7181..00000000000 --- a/reactos/lib/gdi32/makefile +++ /dev/null @@ -1,64 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = gdi32 - -TARGET_BASE = $(TARGET_BASE_LIB_GDI32) - -TARGET_PCH = include/precomp.h - -TARGET_SDKLIBS = rosrtl.a ntdll.a advapi32.a kernel32.a - -TARGET_CFLAGS = \ - -I./include \ - -DUNICODE \ - -Wall \ - -Werror \ - -fno-builtin \ - -D__USE_W32API \ - -DWINVER=0x0600 \ - -D_WIN32_WINNT=0x0501 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -MAIN_OBJECTS = main/dllmain.o - -MISC_OBJECTS = \ - misc/heap.o \ - misc/misc.o \ - misc/stubs.o \ - misc/stubsa.o \ - misc/stubsw.o \ - misc/wingl.o \ - misc/win32k.o - -OBJECTS_OBJECTS = \ - objects/bitmap.o \ - objects/utils.o \ - objects/brush.o \ - objects/dc.o \ - objects/font.o \ - objects/linedda.o \ - objects/region.o \ - objects/metafile.o \ - objects/text.o - -TARGET_OBJECTS = $(MAIN_OBJECTS) $(MISC_OBJECTS) $(OBJECTS_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -DEP_EXCLUDE_FILTER = misc/win32k.% - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/gdiplus/gdiplus.xml b/reactos/lib/gdiplus/gdiplus.xml new file mode 100644 index 00000000000..abd0f81455f --- /dev/null +++ b/reactos/lib/gdiplus/gdiplus.xml @@ -0,0 +1,45 @@ + + + include + + + + + 0x600 + 0x501 + 0x501 + ntdll + kernel32 + gdi32 + msvcrt + + arrow.c + bitmap.c + brush.c + clip.c + codec.c + container.c + dllmain.c + draw.c + effect.c + fill.c + font.c + graphics.c + image.c + linecap.c + linegradient.c + matrix.c + memory.c + metafile.c + palette.c + path.c + pathgradient.c + pathiterator.c + pen.c + region.c + string.c + texture.c + transform.c + + gdiplus.rc + diff --git a/reactos/lib/gdiplus/makefile b/reactos/lib/gdiplus/makefile deleted file mode 100644 index f2d6d7a7394..00000000000 --- a/reactos/lib/gdiplus/makefile +++ /dev/null @@ -1,65 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_REGTESTS = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = gdiplus - -TARGET_BASE = $(TARGET_BASE_LIB_GDIPLUS) - -TARGET_SDKLIBS = ntdll.a kernel32.a gdi32.a msvcrt.a - -TARGET_CFLAGS = \ - -I./include \ - -DUNICODE \ - -Wall \ - -Werror \ - -fno-builtin \ - -D__USE_W32API \ - -DWINVER=0x0600 \ - -D_WIN32_WINNT=0x0501 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -GDIPLUS_OBJECTS = \ - gdiplus/arrow.o \ - gdiplus/bitmap.o \ - gdiplus/brush.o \ - gdiplus/clip.o \ - gdiplus/codec.o \ - gdiplus/container.o \ - gdiplus/dllmain.o \ - gdiplus/draw.o \ - gdiplus/effect.o \ - gdiplus/fill.o \ - gdiplus/font.o \ - gdiplus/graphics.o \ - gdiplus/image.o \ - gdiplus/linecap.o \ - gdiplus/linegradient.o \ - gdiplus/matrix.o \ - gdiplus/memory.o \ - gdiplus/metafile.o \ - gdiplus/palette.o \ - gdiplus/path.o \ - gdiplus/pathgradient.o \ - gdiplus/pathiterator.o \ - gdiplus/pen.o \ - gdiplus/region.o \ - gdiplus/string.o \ - gdiplus/texture.o \ - gdiplus/transform.o - -TARGET_OBJECTS = $(GDIPLUS_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/glu32/Makefile b/reactos/lib/glu32/Makefile deleted file mode 100644 index 70cc8fef0af..00000000000 --- a/reactos/lib/glu32/Makefile +++ /dev/null @@ -1,114 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NORC = yes - -TARGET_NAME = glu32 - -TARGET_BASE = $(TARGET_BASE_LIB_GLU32) - -TARGET_CFLAGS = -D__USE_W32API -DRESOLVE_3D_TEXTURE_SUPPORT -DBUILD_GL32 -DLIBRARYBUILD -Wall -Iinclude -Ilibnurbs/internals -Ilibnurbs/interface -Ilibnurbs/nurbtess - -TARGET_CPPFLAGS = $(TARGET_CFLAGS) - -TARGET_GCCLIBS = opengl32 stdc++ - -TARGET_OBJECTS = \ - libnurbs/interface/bezierEval.o \ - libnurbs/interface/bezierPatch.o \ - libnurbs/interface/bezierPatchMesh.o \ - libnurbs/interface/glcurveval.o \ - libnurbs/interface/glinterface.o \ - libnurbs/interface/glrenderer.o \ - libnurbs/interface/glsurfeval.o \ - libnurbs/interface/incurveeval.o \ - libnurbs/interface/insurfeval.o \ - libnurbs/internals/arc.o \ - libnurbs/internals/arcsorter.o \ - libnurbs/internals/arctess.o \ - libnurbs/internals/backend.o \ - libnurbs/internals/basiccrveval.o \ - libnurbs/internals/basicsurfeval.o \ - libnurbs/internals/bin.o \ - libnurbs/internals/bufpool.o \ - libnurbs/internals/cachingeval.o \ - libnurbs/internals/ccw.o \ - libnurbs/internals/coveandtiler.o \ - libnurbs/internals/curve.o \ - libnurbs/internals/curvelist.o \ - libnurbs/internals/curvesub.o \ - libnurbs/internals/dataTransform.o \ - libnurbs/internals/displaylist.o \ - libnurbs/internals/flist.o \ - libnurbs/internals/flistsorter.o \ - libnurbs/internals/hull.o \ - libnurbs/internals/intersect.o \ - libnurbs/internals/knotvector.o \ - libnurbs/internals/mapdesc.o \ - libnurbs/internals/mapdescv.o \ - libnurbs/internals/maplist.o \ - libnurbs/internals/mesher.o \ - libnurbs/internals/monoTriangulationBackend.o \ - libnurbs/internals/monotonizer.o \ - libnurbs/internals/mycode.o \ - libnurbs/internals/nurbsinterfac.o \ - libnurbs/internals/nurbstess.o \ - libnurbs/internals/patch.o \ - libnurbs/internals/patchlist.o \ - libnurbs/internals/quilt.o \ - libnurbs/internals/reader.o \ - libnurbs/internals/renderhints.o \ - libnurbs/internals/slicer.o \ - libnurbs/internals/sorter.o \ - libnurbs/internals/splitarcs.o \ - libnurbs/internals/subdivider.o \ - libnurbs/internals/tobezier.o \ - libnurbs/internals/trimline.o \ - libnurbs/internals/trimregion.o \ - libnurbs/internals/trimvertpool.o \ - libnurbs/internals/uarray.o \ - libnurbs/internals/varray.o \ - libnurbs/nurbtess/directedLine.o \ - libnurbs/nurbtess/gridWrap.o \ - libnurbs/nurbtess/monoChain.o \ - libnurbs/nurbtess/monoPolyPart.o \ - libnurbs/nurbtess/monoTriangulation.o \ - libnurbs/nurbtess/partitionX.o \ - libnurbs/nurbtess/partitionY.o \ - libnurbs/nurbtess/polyDBG.o \ - libnurbs/nurbtess/polyUtil.o \ - libnurbs/nurbtess/primitiveStream.o \ - libnurbs/nurbtess/quicksort.o \ - libnurbs/nurbtess/rectBlock.o \ - libnurbs/nurbtess/sampleComp.o \ - libnurbs/nurbtess/sampleCompBot.o \ - libnurbs/nurbtess/sampleCompRight.o \ - libnurbs/nurbtess/sampleCompTop.o \ - libnurbs/nurbtess/sampleMonoPoly.o \ - libnurbs/nurbtess/sampledLine.o \ - libnurbs/nurbtess/searchTree.o \ - libtess/dict.o \ - libtess/geom.o \ - libtess/memalloc.o \ - libtess/mesh.o \ - libtess/normal.o \ - libtess/priorityq.o \ - libtess/render.o \ - libtess/sweep.o \ - libtess/tess.o \ - libtess/tessmono.o \ - libutil/error.o \ - libutil/glue.o \ - libutil/mipmap.o \ - libutil/project.o \ - libutil/quad.o \ - libutil/registry.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/glu32/glu32.xml b/reactos/lib/glu32/glu32.xml new file mode 100644 index 00000000000..010d83520d1 --- /dev/null +++ b/reactos/lib/glu32/glu32.xml @@ -0,0 +1,119 @@ + + + include + libnurbs/internals + libnurbs/interface + libnurbs/nurbtess + libtess + libutil + + + + + -lopengl32 + ntdll + kernel32 + gdi32 + msvcrt + + + bezierEval.cc + bezierPatch.cc + bezierPatchMesh.cc + glcurveval.cc + glinterface.cc + glrenderer.cc + glsurfeval.cc + incurveeval.cc + insurfeval.cc + + + arc.cc + arcsorter.cc + arctess.cc + backend.cc + basiccrveval.cc + basicsurfeval.cc + bin.cc + bufpool.cc + cachingeval.cc + ccw.cc + coveandtiler.cc + curve.cc + curvelist.cc + curvesub.cc + dataTransform.cc + displaylist.cc + flist.cc + flistsorter.cc + hull.cc + intersect.cc + knotvector.cc + mapdesc.cc + mapdescv.cc + maplist.cc + mesher.cc + monoTriangulationBackend.cc + monotonizer.cc + mycode.cc + nurbsinterfac.cc + nurbstess.cc + patch.cc + patchlist.cc + quilt.cc + reader.cc + renderhints.cc + slicer.cc + sorter.cc + splitarcs.cc + subdivider.cc + tobezier.cc + trimline.cc + trimregion.cc + trimvertpool.cc + uarray.cc + varray.cc + + + directedLine.cc + gridWrap.cc + monoChain.cc + monoPolyPart.cc + monoTriangulation.cc + partitionX.cc + partitionY.cc + polyDBG.cc + polyUtil.cc + primitiveStream.cc + quicksort.cc + rectBlock.cc + sampleComp.cc + sampleCompBot.cc + sampleCompRight.cc + sampleCompTop.cc + sampleMonoPoly.cc + sampledLine.cc + searchTree.cc + + + + dict.c + geom.c + memalloc.c + mesh.c + normal.c + priorityq.c + render.c + sweep.c + tess.c + tessmono.c + + + error.c + glue.c + mipmap.c + project.c + quad.c + registry.c + + diff --git a/reactos/lib/imagehlp/imagehlp.xml b/reactos/lib/imagehlp/imagehlp.xml new file mode 100644 index 00000000000..15b009e8e46 --- /dev/null +++ b/reactos/lib/imagehlp/imagehlp.xml @@ -0,0 +1,25 @@ + + + . + include/wine + + + + 0x600 + 0x501 + 0x501 + + + 0x10000L + wine + ntdll + kernel32 + access.c + debug.c + imagehlp_main.c + integrity.c + internal.c + modify.c + symbol.c + imagehlp.rc + diff --git a/reactos/lib/imagehlp/makefile b/reactos/lib/imagehlp/makefile deleted file mode 100644 index 06022915d00..00000000000 --- a/reactos/lib/imagehlp/makefile +++ /dev/null @@ -1,56 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = imagehlp - -TARGET_CFLAGS = \ - -Wall \ - -fno-builtin - -# Compile definitions usage: -# __USE_W32API - Compilation with w32api headers -# __REACTOS__ - Compilation of Wine sources for ReactOS -# _WIN32_IE=0x600 - Internet Explorer 6 compatible defintions -# WINVER=0x501 - Windows XP definitions -# __need_offsetof - Force definition of macro offsetof in stddef.h -# -DEFINES = \ - -D_DISABLE_TIDENTS \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DWINVER=0x501 \ - -DCOBJMACROS \ - -D__need_offsetof - -TARGET_CFLAGS += \ - $(DEFINES) \ - -DDCX_USESTYLE=0x10000L \ - -I$(PATH_TO_TOP)/include/wine - - -TARGET_RCFLAGS += -D__REACTOS__ -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = wine.a ntdll.a kernel32.a - -TARGET_BASE = $(TARGET_BASE_LIB_IMAGEHLP) - -TARGET_OBJECTS = \ -debug.o \ -imagehlp_main.o \ -integrity.o \ -modify.o \ -symbol.o \ -access.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/imm32/Makefile b/reactos/lib/imm32/Makefile deleted file mode 100644 index a4292a7d15f..00000000000 --- a/reactos/lib/imm32/Makefile +++ /dev/null @@ -1,19 +0,0 @@ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = imm32 - -TARGET_BASE=$(TARGET_BASE_LIB_IMM32) - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -D__USE_W32API - -TARGET_SDKLIBS = wine.a user32.a kernel32.a ntdll.a - -TARGET_OBJECTS = imm.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/imm32/imm32.xml b/reactos/lib/imm32/imm32.xml new file mode 100644 index 00000000000..acda66c69eb --- /dev/null +++ b/reactos/lib/imm32/imm32.xml @@ -0,0 +1,12 @@ + + + . + + + wine + ntdll + kernel32 + user32 + imm.c + imm32.rc + diff --git a/reactos/lib/iphlpapi/ifenum_reactos.c b/reactos/lib/iphlpapi/ifenum_reactos.c index dd6b02c8f4c..350a1492c68 100644 --- a/reactos/lib/iphlpapi/ifenum_reactos.c +++ b/reactos/lib/iphlpapi/ifenum_reactos.c @@ -425,7 +425,7 @@ static DWORD getNumInterfacesInt(BOOL onlyNonLoopback) } DPRINT("getNumInterfaces: success: %d %d %08x\n", - onlyLoopback, numInterfaces, status ); + onlyNonLoopback, numInterfaces, status ); tdiFreeThingSet( entitySet ); diff --git a/reactos/lib/iphlpapi/iphlpapi.xml b/reactos/lib/iphlpapi/iphlpapi.xml new file mode 100644 index 00000000000..7b1d3d6111d --- /dev/null +++ b/reactos/lib/iphlpapi/iphlpapi.xml @@ -0,0 +1,24 @@ + + + include + include/wine + + + + + + wine + ntdll + kernel32 + advapi32 + ws2_32 + ifenum_reactos.c + ipstats_reactos.c + iphlpapi_main.c + media.c + registry.c + resinfo_reactos.c + route_reactos.c + iphlpapi.rc + iphlpapi.spec + diff --git a/reactos/lib/iphlpapi/makefile b/reactos/lib/iphlpapi/makefile deleted file mode 100644 index b6dda6d6c86..00000000000 --- a/reactos/lib/iphlpapi/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: makefile - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -TARGET_NAME = iphlpapi - -TARGET_BASE = 0x777c0000 - -TARGET_CFLAGS += -DYDEBUG -DUNICODE -D_UNICODE -D__USE_W32API -D__REACTOS__ -Wall -Werror -DDBG -# -D_WIN32_WINNT=0x0500 - -TARGET_SDKLIBS = rtl.a ntdll.a kernel32.a ws2_32.a - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - diff --git a/reactos/lib/kbdda/kbdda.xml b/reactos/lib/kbdda/kbdda.xml new file mode 100644 index 00000000000..399e87506d5 --- /dev/null +++ b/reactos/lib/kbdda/kbdda.xml @@ -0,0 +1,7 @@ + + + include + + kbdda.c + kbdda.rc + diff --git a/reactos/lib/kbdda/makefile b/reactos/lib/kbdda/makefile deleted file mode 100644 index 068fe30879d..00000000000 --- a/reactos/lib/kbdda/makefile +++ /dev/null @@ -1,22 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = kmdll - -TARGET_NAME = kbdda - -TARGET_BASE = 0x5500000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_OBJECTS = kbdda.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/kbddv/kbddv.xml b/reactos/lib/kbddv/kbddv.xml new file mode 100644 index 00000000000..7d03f1b55b6 --- /dev/null +++ b/reactos/lib/kbddv/kbddv.xml @@ -0,0 +1,7 @@ + + + include + + kbddv.c + kbddv.rc + diff --git a/reactos/lib/kbddv/makefile b/reactos/lib/kbddv/makefile deleted file mode 100644 index 6c0c9ace044..00000000000 --- a/reactos/lib/kbddv/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbddv - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbddv.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdes/kbdes.xml b/reactos/lib/kbdes/kbdes.xml new file mode 100644 index 00000000000..92e1219f514 --- /dev/null +++ b/reactos/lib/kbdes/kbdes.xml @@ -0,0 +1,7 @@ + + + include + + kbdes.c + kbdes.rc + diff --git a/reactos/lib/kbdes/makefile b/reactos/lib/kbdes/makefile deleted file mode 100644 index 2ecbddb8534..00000000000 --- a/reactos/lib/kbdes/makefile +++ /dev/null @@ -1,22 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = kmdll - -TARGET_NAME = kbdes - -TARGET_BASE = 0x5500000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_OBJECTS = kbdes.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/kbdfr/kbdfr.xml b/reactos/lib/kbdfr/kbdfr.xml new file mode 100644 index 00000000000..cf1e6f3abcd --- /dev/null +++ b/reactos/lib/kbdfr/kbdfr.xml @@ -0,0 +1,7 @@ + + + include + + kbdfr.c + kbdfr.rc + diff --git a/reactos/lib/kbdfr/makefile b/reactos/lib/kbdfr/makefile deleted file mode 100644 index 56ab529ef16..00000000000 --- a/reactos/lib/kbdfr/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdfr - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdfr.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdgr/kbdgr.xml b/reactos/lib/kbdgr/kbdgr.xml new file mode 100644 index 00000000000..e24f249a2da --- /dev/null +++ b/reactos/lib/kbdgr/kbdgr.xml @@ -0,0 +1,7 @@ + + + include + + kbdgr.c + kbdgr.rc + diff --git a/reactos/lib/kbdgr/makefile b/reactos/lib/kbdgr/makefile deleted file mode 100644 index 9e5638cf439..00000000000 --- a/reactos/lib/kbdgr/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdgr - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdgr.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdru/kbdru.xml b/reactos/lib/kbdru/kbdru.xml new file mode 100644 index 00000000000..7f6a4fae4da --- /dev/null +++ b/reactos/lib/kbdru/kbdru.xml @@ -0,0 +1,7 @@ + + + include + + kbdru.c + kbdru.rc + diff --git a/reactos/lib/kbdru/makefile b/reactos/lib/kbdru/makefile deleted file mode 100644 index 035ed931f66..00000000000 --- a/reactos/lib/kbdru/makefile +++ /dev/null @@ -1,39 +0,0 @@ -# $Id: makefile 12852 2005-01-06 13:58:04Z mf $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdru - -TARGET_BASE = 0x5500000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdru.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdse/kbdse.xml b/reactos/lib/kbdse/kbdse.xml new file mode 100644 index 00000000000..39cd0239230 --- /dev/null +++ b/reactos/lib/kbdse/kbdse.xml @@ -0,0 +1,7 @@ + + + include + + kbdse.c + kbdse.rc + diff --git a/reactos/lib/kbdse/makefile b/reactos/lib/kbdse/makefile deleted file mode 100644 index 6e2e7416245..00000000000 --- a/reactos/lib/kbdse/makefile +++ /dev/null @@ -1,39 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdse - -TARGET_BASE = 0x5500000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdse.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdsg/kbdsg.xml b/reactos/lib/kbdsg/kbdsg.xml new file mode 100644 index 00000000000..95441351569 --- /dev/null +++ b/reactos/lib/kbdsg/kbdsg.xml @@ -0,0 +1,7 @@ + + + include + + kbdsg.c + kbdsg.rc + diff --git a/reactos/lib/kbdsg/makefile b/reactos/lib/kbdsg/makefile deleted file mode 100644 index 0103e505e8d..00000000000 --- a/reactos/lib/kbdsg/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdsg - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdsg.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbduk/kbduk.xml b/reactos/lib/kbduk/kbduk.xml new file mode 100644 index 00000000000..46d4029c069 --- /dev/null +++ b/reactos/lib/kbduk/kbduk.xml @@ -0,0 +1,7 @@ + + + include + + kbduk.c + kbduk.rc + diff --git a/reactos/lib/kbduk/makefile b/reactos/lib/kbduk/makefile deleted file mode 100644 index 1ce7b83d36a..00000000000 --- a/reactos/lib/kbduk/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbduk - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbduk.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kbdus/kbdus.xml b/reactos/lib/kbdus/kbdus.xml new file mode 100644 index 00000000000..89f2c6fb353 --- /dev/null +++ b/reactos/lib/kbdus/kbdus.xml @@ -0,0 +1,7 @@ + + + include + + kbdus.c + kbdus.rc + diff --git a/reactos/lib/kbdus/makefile b/reactos/lib/kbdus/makefile deleted file mode 100644 index 701e293f58e..00000000000 --- a/reactos/lib/kbdus/makefile +++ /dev/null @@ -1,41 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = kbdus - -TARGET_BASE = 0x5500000 - -TARGET_ENTRY = 0x00000000 - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/ntoskrnl/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = kbdus.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS diff --git a/reactos/lib/kernel32/include/kernel32.h b/reactos/lib/kernel32/include/kernel32.h index d52b3498c0c..b968587d812 100755 --- a/reactos/lib/kernel32/include/kernel32.h +++ b/reactos/lib/kernel32/include/kernel32.h @@ -60,15 +60,13 @@ HANDLE STDCALL OpenConsoleW (LPWSTR wsName, PTEB GetTeb(VOID); - PWCHAR FilenameA2W(LPCSTR NameA, BOOL alloc); DWORD FilenameW2A_FitOrFail(LPSTR DestA, INT destLen, LPCWSTR SourceW, INT sourceLen); DWORD FilenameU2A_FitOrFail(LPSTR DestA, INT destLen, PUNICODE_STRING SourceU); - - - +#define HeapAlloc RtlAllocateHeap +#define HeapFree RtlFreeHeap #endif /* ndef _KERNEL32_INCLUDE_KERNEL32_H */ diff --git a/reactos/lib/kernel32/kernel32.def b/reactos/lib/kernel32/kernel32.def index 383ec6db0ef..e76e2316eb0 100644 --- a/reactos/lib/kernel32/kernel32.def +++ b/reactos/lib/kernel32/kernel32.def @@ -178,7 +178,7 @@ EnterCriticalSection@4=NTDLL.RtlEnterCriticalSection EnumCalendarInfoA@16 EnumCalendarInfoExA@16 EnumCalendarInfoExW@16 -EnumCalendarInfoW@16 +;EnumCalendarInfoW@16 EnumDateFormatsA@12 EnumDateFormatsExA@12 EnumDateFormatsExW@12 @@ -659,7 +659,7 @@ OpenJobObjectW@12 OpenMutexA@12 OpenMutexW@12 OpenProcess@12 -OpenProfileUserMapping@0 +;OpenProfileUserMapping@0 OpenSemaphoreA@12 OpenSemaphoreW@12 OpenThread@12 @@ -691,7 +691,7 @@ QueryPerformanceCounter@4 QueryPerformanceFrequency@4 QueueUserAPC@12 QueueUserWorkItem@12 -QueryWin31IniFilesMappedToRegistry@16 +;QueryWin31IniFilesMappedToRegistry@16 RaiseException@16 ReadConsoleA@20 ReadConsoleInputA@16 diff --git a/reactos/lib/kernel32/kernel32.mc b/reactos/lib/kernel32/kernel32.mc index a63de78acd5..6352cd6bb7e 100644 --- a/reactos/lib/kernel32/kernel32.mc +++ b/reactos/lib/kernel32/kernel32.mc @@ -2477,7 +2477,7 @@ Severity=Success Facility=System SymbolicName=ERROR_DEVICE_ENUMERATION_ERROR Language=English -ERROR_DEVICE_ENUMERATION_ERROR - The "%hs" encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection. +ERROR_DEVICE_ENUMERATION_ERROR - The \"%hs\" encountered an error while applying power or reading the device configuration. This may be caused by a failure of your hardware or by a poor connection. . MessageId=649 @@ -2981,7 +2981,7 @@ Severity=Success Facility=System SymbolicName=ERROR_CARDBUS_NOT_SUPPORTED Language=English -ERROR_CARDBUS_NOT_SUPPORTED - The device "%hs" has detected a CardBus card in its slot, but the firmware on this system is not configured to allow the CardBus controller to be run in CardBus mode. The operating system will currently accept only 16-bit (R2) pc-cards on this controller. +ERROR_CARDBUS_NOT_SUPPORTED - The device \"%hs\" has detected a CardBus card in its slot, but the firmware on this system is not configured to allow the CardBus controller to be run in CardBus mode. The operating system will currently accept only 16-bit (R2) pc-cards on this controller. . MessageId=725 @@ -16489,7 +16489,7 @@ Severity=Success Facility=System SymbolicName=ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE Language=English -ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE - The manifest has a default namespace specified on the assembly element but its value is not "urn:schemas-microsoft-com:asm.v1". +ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE - The manifest has a default namespace specified on the assembly element but its value is not \"urn:schemas-microsoft-com:asm.v1\". . MessageId=14020 @@ -16865,7 +16865,7 @@ Severity=Success Facility=System SymbolicName=ERROR_SXS_XML_E_RESERVEDNAMESPACE Language=English -ERROR_SXS_XML_E_RESERVEDNAMESPACE - Manifest Parse Error : The namespace prefix is not allowed to start with the reserved string "xml". +ERROR_SXS_XML_E_RESERVEDNAMESPACE - Manifest Parse Error : The namespace prefix is not allowed to start with the reserved string \"xml\". . MessageId=14067 diff --git a/reactos/lib/kernel32/kernel32.xml b/reactos/lib/kernel32/kernel32.xml new file mode 100644 index 00000000000..12a17f1ffb3 --- /dev/null +++ b/reactos/lib/kernel32/kernel32.xml @@ -0,0 +1,125 @@ + + . + include + + + 0x0500 + k32.h + + break.c + debugger.c + output.c + + + except.c + + + backup.c + bintype.c + cnotify.c + copy.c + create.c + curdir.c + delete.c + deviceio.c + dir.c + dosdev.c + file.c + find.c + hardlink.c + iocompl.c + lfile.c + lock.c + mailslot.c + move.c + npipe.c + pipe.c + rw.c + tape.c + volume.c + + + global.c + heap.c + isbad.c + local.c + procmem.c + resnotify.c + section.c + virtual.c + + + atom.c + chartype.c + comm.c + computername.c + console.c + dllmain.c + env.c + error.c + errormsg.c + handle.c + lang.c + lcformat.c + ldr.c + lzexpand_main.c + muldiv.c + nls.c + perfcnt.c + profile.c + res.c + stubs.c + sysinfo.c + time.c + timerqueue.c + toolhelp.c + version.c + + + cmdline.c + create.c + job.c + proc.c + session.c + + + lstring.c + + + critical.c + event.c + intrlck.c + mutex.c + sem.c + timer.c + wait.c + + + + fiber.S + + fiber.c + fls.c + thread.c + tls.c + + + + + . + include + + + 0x0500 + kernel32_base + pseh + rosrtl + ntdll + -lgcc + -nostartfiles + -nostdlib + kernel32.rc + + + + diff --git a/reactos/lib/kernel32/makefile b/reactos/lib/kernel32/makefile deleted file mode 100644 index 05dc75e2beb..00000000000 --- a/reactos/lib/kernel32/makefile +++ /dev/null @@ -1,101 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_REGTESTS = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = kernel32 - -TARGET_BASE = $(TARGET_BASE_LIB_KERNEL32) - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -D_SEH_NO_NATIVE_NLG -Wall -Werror - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_RCFLAGS += -DWINVER=0x0500 - -TARGET_SDKLIBS = pseh.a rosrtl.a ntdll.a kernel32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = k32.h - -TARGET_CLEAN = errcodes.rc $(PATH_TO_TOP)/include/reactos/errcodes.h msg?????.bin - -SYNCH_OBJECTS = synch/critical.o synch/event.o synch/intrlck.o synch/mutex.o \ - synch/sem.o synch/timer.o synch/wait.o - -MISC_OBJECTS = misc/error.o misc/atom.o misc/handle.o misc/env.o \ - misc/dllmain.o misc/comm.o misc/errormsg.o \ - misc/console.o misc/time.o misc/timerqueue.o misc/toolhelp.o \ - misc/stubs.o misc/lang.o misc/ldr.o misc/res.o \ - misc/sysinfo.o misc/profile.o \ - misc/muldiv.o misc/nls.o misc/computername.o \ - misc/perfcnt.o misc/lzexpand_main.o misc/lcformat.o \ - misc/chartype.o misc/version.o - -FILE_OBJECTS = file/file.o file/curdir.o file/lfile.o file/dir.o \ - file/iocompl.o file/volume.o file/deviceio.o file/dosdev.o \ - file/create.o file/find.o file/copy.o file/pipe.o \ - file/move.o file/lock.o file/rw.o file/delete.o \ - file/npipe.o file/tape.o file/mailslot.o file/backup.o \ - file/cnotify.o file/hardlink.o file/bintype.o - -MEM_OBJECTS = mem/global.o mem/heap.o mem/isbad.o mem/local.o \ - mem/procmem.o mem/resnotify.o mem/section.o mem/virtual.o - -NLS_OBJECTS = - -THREAD_OBJECTS = \ - thread/fiber.o \ - thread/thread.o \ - thread/tls.o \ - thread/fls.o - -THREAD_I386_OBJECTS = \ - thread/i386/fiber.o - -PROCESS_OBJECTS = \ - process/proc.o \ - process/cmdline.o \ - process/create.o \ - process/job.o \ - process/session.o - -STRING_OBJECTS = string/lstring.o - -EXCEPT_OBJECTS = except/except.o - -DEBUG_OBJECTS = debug/debugger.o debug/output.o debug/break.o - -ARCH_OBJECTS = $(THREAD_I386_OBJECTS) - -TARGET_OBJECTS = $(MISC_OBJECTS) $(FILE_OBJECTS) $(THREAD_OBJECTS) \ - $(PROCESS_OBJECTS) $(STRING_OBJECTS) $(MEM_OBJECTS) \ - $(SYNCH_OBJECTS) $(EXCEPT_OBJECTS) $(DEBUG_OBJECTS) \ - $(ARCH_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -$(TARGET_NAME).coff: errcodes.rc - -errcodes.rc: $(TARGET_NAME).mc - $(MC) \ - -H $(PATH_TO_TOP)/include/reactos/errcodes.h \ - -o errcodes.rc \ - $(TARGET_NAME).mc - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: except/TAGS file/TAGS mem/TAGS misc/TAGS nls/TAGS process/TAGS string/TAGS synch/TAGS thread/TAGS - etags -i except/TAGS -i file/TAGS -i mem/TAGS -i misc/TAGS -i nls/TAGS -i process/TAGS -i string/TAGS -i synch/TAGS -i thread/TAGS diff --git a/reactos/lib/kernel32/misc/dllmain.c b/reactos/lib/kernel32/misc/dllmain.c index 26805620b71..7aa6df08389 100644 --- a/reactos/lib/kernel32/misc/dllmain.c +++ b/reactos/lib/kernel32/misc/dllmain.c @@ -177,8 +177,6 @@ DllMain(HANDLE hDll, break; } - PREPARE_TESTS - return TRUE; } diff --git a/reactos/lib/kernel32/tests/Makefile b/reactos/lib/kernel32/tests/Makefile deleted file mode 100644 index eb71025309c..00000000000 --- a/reactos/lib/kernel32/tests/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = test - -TARGET_NAME = regtests - -TARGET_LIBPATH = . - -TARGET_CFLAGS = -I$(REGTESTS_PATH_INC) - -TARGET_LIBS = ../kernel32.a - --include Makefile.tests - -TARGET_OBJECTS = \ - setup.o \ - $(addprefix tests/, $(TESTS)) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/kernel32/tests/kernel32.xml b/reactos/lib/kernel32/tests/kernel32.xml new file mode 100644 index 00000000000..0478b0fef8b --- /dev/null +++ b/reactos/lib/kernel32/tests/kernel32.xml @@ -0,0 +1,21 @@ + + . + + + 0x0500 + rtshared + regtests + kernel32_base + pseh + rosrtl + ntdll + msvcrt + -lgcc + -nostartfiles + -nostdlib + + CreateFile.c + + setup.c + + diff --git a/reactos/lib/kernel32/tests/stubs.xml b/reactos/lib/kernel32/tests/stubs.xml new file mode 100644 index 00000000000..03088d46b6c --- /dev/null +++ b/reactos/lib/kernel32/tests/stubs.xml @@ -0,0 +1,135 @@ + + CsrCaptureParameterBuffer@16 + CsrClientCallServer@16 + CsrClientConnectToServer@0 + CsrReleaseParameterBuffer@4 + DbgUiContinue@8 + HeapAlloc@12 + HeapFree@12 + LdrAccessResource@16 + LdrDisableThreadCalloutsForDll@4 + LdrFindResource_U@16 + LdrLoadDll@16 + LdrShutdownProcess@0 + LdrShutdownThread@0 + LdrUnloadDll@4 + NtAllocateVirtualMemory@24 + NtClose@4 + NtCreateDirectoryObject@12 + NtCreateEvent@20 + NtCreateFile@44 + NtCreateKey@28 + NtCreateProcess@32 + NtCreateSection@28 + NtDelayExecution@8 + NtDeviceIoControlFile@40 + _imp__NtDuplicateObject@28 + NtFlushBuffersFile@8 + NtFlushInstructionCache@12 + NtFlushVirtualMemory@16 + NtFreeVirtualMemory@16 + NtFsControlFile@40 + NtGetContextThread@8 + NtLockVirtualMemory@16 + NtOpenDirectoryObject@12 + NtOpenEvent@12 + NtOpenFile@24 + NtOpenKey@12 + NtOpenProcess@16 + NtOpenSection@12 + NtOpenThread@16 + NtProtectVirtualMemory@20 + NtPulseEvent@8 + NtQueryDefaultLocale@8 + NtQueryDefaultUILanguage@4 + NtQueryDirectoryFile@44 + NtQueryInformationFile@20 + _imp__NtQueryInformationProcess@20 + NtQueryInformationThread@20 + NtQueryObject@20 + NtQuerySystemInformation@16 + NtQuerySystemTime@4 + NtQueryValueKey@24 + NtQueryVirtualMemory@24 + NtQueryVolumeInformationFile@20 + NtReadFile@36 + NtReadVirtualMemory@20 + NtResetEvent@8 + NtResumeThread@8 + NtSetContextThread@8 + NtSetEvent@8 + NtSetInformationFile@20 + NtSetInformationObject@16 + _imp__NtSetInformationProcess@16 + NtSetInformationThread@16 + NtSetSystemInformation@12 + NtSetSystemTime@8 + NtSignalAndWaitForSingleObject@16 + NtSuspendThread@8 + NtTerminateThread@8 + NtUnlockVirtualMemory@16 + NtUnmapViewOfSection@8 + NtWaitForMultipleObjects@20 + NtWaitForSingleObject@12 + NtWriteFile@36 + NtWriteVirtualMemory@20 + NtYieldExecution@0 + RtlAcquirePebLock@0 + RtlAnsiStringToUnicodeSize@4 + _imp__RtlBaseProcessStartRoutine + RtlCompactHeap@8 + RtlCopyUnicodeString@8 + RtlCreateHeap@24 + RtlCreateProcessParameters@40 + RtlCreateUnicodeString@8 + RtlCreateUnicodeStringFromAsciiz@8 + RtlDeleteCriticalSection@4 + RtlDestroyHeap@4 + RtlDestroyProcessParameters@4 + RtlDoesFileExists_U@4 + RtlDosPathNameToNtPathName_U@16 + RtlDosSearchPath_U@24 + RtlEnterCriticalSection@4 + RtlExpandEnvironmentStrings_U@16 + RtlFreeHeap@12 + RtlGetCurrentDirectory_U@8 + RtlGetFullPathName_U@16 + RtlGetProcessHeaps@8 + RtlImageNtHeader@4 + RtlInitCodePageTable@8 + RtlInitializeCriticalSection@4 + RtlInitUnicodeString@8 + RtlIntegerToChar@16 + RtlIntegerToUnicodeString@12 + RtlIsNameLegalDOS8Dot3@12 + RtlLeaveCriticalSection@4 + RtlLockHeap@4 + RtlNtStatusToDosError@4 + RtlOemStringToUnicodeSize@4 + RtlOemStringToUnicodeString@12 + RtlOpenCurrentUser@8 + RtlQueryEnvironmentVariable_U@12 + RtlRaiseException@4 + RtlReAllocateHeap@16 + RtlReleasePebLock@0 + RtlRosCreateUserThreadVa + RtlRosExitUserThread@4 + RtlSetCurrentDirectory_U@4 + RtlSetEnvironmentVariable@12 + RtlSetTimeZoneInformation@4 + RtlTimeFieldsToTime@8 + RtlTimeToTimeFields@8 + RtlUnicodeStringToAnsiSize@4 + RtlUnicodeStringToAnsiString@12 + RtlUnicodeStringToInteger@12 + RtlUnicodeStringToOemString@12 + RtlUnicodeToOemN@20 + RtlUnlockHeap@4 + RtlValidateHeap@12 + ZwMapViewOfSection@40 + ZwOpenSection@12 + ZwQuerySection@20 + ZwQuerySystemInformation@16 + ZwReadFile@36 + ZwTerminateProcess@8 + diff --git a/reactos/lib/kernel32/tests/tests/CreateFile.c b/reactos/lib/kernel32/tests/tests/CreateFile.c index 96b7426d7ca..efbe9dc5fd7 100644 --- a/reactos/lib/kernel32/tests/tests/CreateFile.c +++ b/reactos/lib/kernel32/tests/tests/CreateFile.c @@ -12,11 +12,11 @@ typedef struct { LPCWSTR lpFileName; DWORD dwDesiredAccess; - DWORD dwShareMode; - LPSECURITY_ATTRIBUTES lpSecurityAttributes; - DWORD dwCreationDisposition; - DWORD dwFlagsAndAttributes; - HANDLE hTemplateFile; + DWORD dwShareMode; + LPSECURITY_ATTRIBUTES lpSecurityAttributes; + DWORD dwCreationDisposition; + DWORD dwFlagsAndAttributes; + HANDLE hTemplateFile; } CreateFile_PARAMETERS; typedef struct @@ -93,7 +93,7 @@ MockNtCreateFile(PHANDLE FileHandle, static HOOK NtCreateFileHooks[] = { {"NtCreateFile", MockNtCreateFile}, - NULL, NULL + {NULL, NULL} }; static void TestFile() diff --git a/reactos/lib/kjs/kjs.xml b/reactos/lib/kjs/kjs.xml new file mode 100644 index 00000000000..9c4903f0718 --- /dev/null +++ b/reactos/lib/kjs/kjs.xml @@ -0,0 +1,41 @@ + + . + src + include + + setjmp.S + longjmp.S + alloc.c + bc.c + b_core.c + b_file.c + b_func.c + b_regexp.c + b_system.c + compat.c + debug.c + iostream.c + js.c + kjs.c + mrgsort.c + object.c + regex.c + vm.c + vmjumps.c + vmswitch.c + vmswt0.c + + + b_array.c + b_bool.c + b_object.c + b_number.c + b_string.c + b_vm.c + compiler.c + crc32.c + dl_dummy.c + heap.c + utils.c + + diff --git a/reactos/lib/kjs/makefile b/reactos/lib/kjs/makefile deleted file mode 100644 index 7a0295ca8d9..00000000000 --- a/reactos/lib/kjs/makefile +++ /dev/null @@ -1,95 +0,0 @@ -# $Id$ -# Kernel JavaScript -# -# You can use this for various things but the most obvious is as a powerful -# interactive debugger. -# -# Other modules might use it as well to prototype parts of the kernel, and -# to implement policy. Since kjs can read the registry, it is possible to -# load libraries from there. Also, I'm adding an easy interface that allows -# a module to introduce its own kjs methods. -# - -PATH_TO_TOP = ../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = library - -TARGET_NAME = kjs - -TARGET_CFLAGS = -g -D__NTKJS__ -D__NO_INLINE__ -Werror -Wall -I. -Isrc -Iinclude - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_ASFLAGS = -I $(PATH_TO_TOP)/include - -TARGET_LFLAGS = -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 \ - -nostartfiles -nostdlib \ - -TARGET_GCCLIBS = gcc - -TARGET_BASE = 0x79f60000 - -TARGET_PATH = - -# -# TARGET_ENTRY = 0x0 -# - -ARCH_OBJECTS = ksrc/setjmp.o ksrc/longjmp.o -MOD_OBJECTS = ksrc/alloc.o \ - ksrc/bc.o \ - ksrc/b_core.o \ - ksrc/b_file.o \ - ksrc/b_func.o \ - ksrc/b_regexp.o \ - ksrc/b_system.o \ - ksrc/compat.o \ - ksrc/debug.o \ - ksrc/iostream.o \ - ksrc/js.o \ - ksrc/kjs.o \ - ksrc/mrgsort.o \ - ksrc/object.o \ - ksrc/regex.o \ - ksrc/vm.o \ - ksrc/vmjumps.o \ - ksrc/vmswitch.o \ - ksrc/vmswt0.o -ORIG_OBJECTS = src/b_array.o \ - src/b_bool.o \ - src/b_object.o \ - src/b_number.o \ - src/b_string.o \ - src/b_vm.o \ - src/compiler.o \ - src/crc32.o \ - src/dl_dummy.o \ - src/heap.o \ - src/utils.o -TARGET_OBJECTS = $(ORIG_OBJECTS) $(MOD_OBJECTS) $(ARCH_OBJECTS) -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: csr/TAGS dbg/TAGS ldr/TAGS main/TAGS rtl/TAGS stdio/TAGS stdlib/TAGS string/TAGS stubs/TAGS - etags -i csr/TAGS -i dbg/TAGS -i ldr/TAGS -i main/TAGS -i rtl/TAGS -i stdio/TAGS -i stdlib/TAGS -i string/TAGS -i stubs/TAGS - - -docu: - doxygen Doxyfile - -.PHONY: docu - - -# EOF diff --git a/reactos/lib/lib.mak b/reactos/lib/lib.mak new file mode 100644 index 00000000000..dcbc7925f28 --- /dev/null +++ b/reactos/lib/lib.mak @@ -0,0 +1,4 @@ +LIB_BASE = lib +LIB_BASE_ = $(LIB_BASE)$(SEP) + +include $(LIB_BASE_)zlib/zlib.mak diff --git a/reactos/lib/libwine/libwine.xml b/reactos/lib/libwine/libwine.xml new file mode 100644 index 00000000000..331521bdf47 --- /dev/null +++ b/reactos/lib/libwine/libwine.xml @@ -0,0 +1,5 @@ + + + + debug.c + diff --git a/reactos/lib/libwine/makefile b/reactos/lib/libwine/makefile deleted file mode 100644 index f25c5409f30..00000000000 --- a/reactos/lib/libwine/makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = wine - -TARGET_CFLAGS = -D__REACTOS__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Werror -Wall - -TARGET_LFLAGS = -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 \ - -nostartfiles - -TARGET_OBJECTS = \ - debug.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/lzexpand/Makefile b/reactos/lib/lzexpand/Makefile deleted file mode 100644 index b7ec8925be5..00000000000 --- a/reactos/lib/lzexpand/Makefile +++ /dev/null @@ -1,19 +0,0 @@ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = lz32 - -TARGET_BASE=$(TARGET_BASE_LIB_LZEXPAND) - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_SDKLIBS = ntdll.a kernel32.a - -TARGET_OBJECTS = lzexpand_main.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/lzexpand/lz32.xml b/reactos/lib/lzexpand/lz32.xml new file mode 100644 index 00000000000..58a79f4d799 --- /dev/null +++ b/reactos/lib/lzexpand/lz32.xml @@ -0,0 +1,9 @@ + + + . + + ntdll + kernel32 + lzexpand_main.c + lz32.rc + diff --git a/reactos/lib/mesa32/Makefile b/reactos/lib/mesa32/Makefile deleted file mode 100644 index 40b81912516..00000000000 --- a/reactos/lib/mesa32/Makefile +++ /dev/null @@ -1,267 +0,0 @@ -# configuration -MESA_HAVE_X86 = 1 - -MESA_INCLUDE_DIRS = \ - -Iinclude \ - -Isrc \ - -Isrc/main \ - -Isrc/glapi \ - -Isrc/math \ - -Isrc/tnl \ - -Isrc/shader \ - -Isrc/swrast \ - -Isrc/swrast_setup - -MESA_MAIN_OBJECTS = \ - src/main/api_arrayelt.o \ - src/main/api_loopback.o \ - src/main/api_noop.o \ - src/main/api_validate.o \ - src/main/accum.o \ - src/main/attrib.o \ - src/main/blend.o \ - src/main/bufferobj.o \ - src/main/buffers.o \ - src/main/clip.o \ - src/main/colortab.o \ - src/main/context.o \ - src/main/convolve.o \ - src/main/debug.o \ - src/main/depth.o \ - src/main/dispatch.o \ - src/main/dlist.o \ - src/main/drawpix.o \ - src/main/enable.o \ - src/main/enums.o \ - src/main/eval.o \ - src/main/extensions.o \ - src/main/feedback.o \ - src/main/fog.o \ - src/main/get.o \ - src/main/hash.o \ - src/main/hint.o \ - src/main/histogram.o \ - src/main/image.o \ - src/main/imports.o \ - src/main/light.o \ - src/main/lines.o \ - src/main/matrix.o \ - src/main/occlude.o \ - src/main/pixel.o \ - src/main/points.o \ - src/main/polygon.o \ - src/main/rastpos.o \ - src/main/state.o \ - src/main/stencil.o \ - src/main/texcompress.o \ - src/main/texcompress_s3tc.o \ - src/main/texcompress_fxt1.o \ - src/main/texformat.o \ - src/main/teximage.o \ - src/main/texobj.o \ - src/main/texstate.o \ - src/main/texstore.o \ - src/main/varray.o \ - src/main/vtxfmt.o - -MESA_GLAPI_OBJECTS = \ - src/glapi/glapi.o \ - src/glapi/glthread.o - -MESA_MATH_OBJECTS = \ - src/math/m_debug_clip.o \ - src/math/m_debug_norm.o \ - src/math/m_debug_xform.o \ - src/math/m_eval.o \ - src/math/m_matrix.o \ - src/math/m_translate.o \ - src/math/m_vector.o \ - src/math/m_xform.o - -MESA_ARRAY_CACHE_OBJECTS = \ - src/array_cache/ac_context.o \ - src/array_cache/ac_import.o - -MESA_SWRAST_OBJECTS = \ - src/swrast/s_fragprog_to_c.o \ - src/swrast/s_aaline.o \ - src/swrast/s_aatriangle.o \ - src/swrast/s_accum.o \ - src/swrast/s_alpha.o \ - src/swrast/s_alphabuf.o \ - src/swrast/s_auxbuffer.o \ - src/swrast/s_bitmap.o \ - src/swrast/s_blend.o \ - src/swrast/s_buffers.o \ - src/swrast/s_copypix.o \ - src/swrast/s_context.o \ - src/swrast/s_depth.o \ - src/swrast/s_drawpix.o \ - src/swrast/s_feedback.o \ - src/swrast/s_fog.o \ - src/swrast/s_imaging.o \ - src/swrast/s_lines.o \ - src/swrast/s_logic.o \ - src/swrast/s_masking.o \ - src/swrast/s_nvfragprog.o \ - src/swrast/s_pixeltex.o \ - src/swrast/s_points.o \ - src/swrast/s_readpix.o \ - src/swrast/s_span.o \ - src/swrast/s_stencil.o \ - src/swrast/s_tcc.o \ - src/swrast/s_texture.o \ - src/swrast/s_texstore.o \ - src/swrast/s_triangle.o \ - src/swrast/s_zoom.o - -MESA_SWRAST_SETUP_OBJECTS = \ - src/swrast_setup/ss_context.o \ - src/swrast_setup/ss_triangle.o - -MESA_TNL_OBJECTS = \ - src/tnl/t_array_api.o \ - src/tnl/t_array_import.o \ - src/tnl/t_context.o \ - src/tnl/t_pipeline.o \ - src/tnl/t_save_api.o \ - src/tnl/t_save_loopback.o \ - src/tnl/t_save_playback.o \ - src/tnl/t_vb_fog.o \ - src/tnl/t_vb_light.o \ - src/tnl/t_vb_normals.o \ - src/tnl/t_vb_points.o \ - src/tnl/t_vb_program.o \ - src/tnl/t_vb_render.o \ - src/tnl/t_vb_texgen.o \ - src/tnl/t_vb_texmat.o \ - src/tnl/t_vb_vertex.o \ - src/tnl/t_vertex.o \ - src/tnl/t_vertex_c.o \ - src/tnl/t_vertex_codegen.o \ - src/tnl/t_vtx_api.o \ - src/tnl/t_vtx_generic.o \ - src/tnl/t_vtx_x86.o \ - src/tnl/t_vtx_eval.o \ - src/tnl/t_vtx_exec.o - -MESA_SHADER_OBJECTS = \ - src/shader/arbfragparse.o \ - src/shader/arbprogparse.o \ - src/shader/arbprogram.o \ - src/shader/arbvertparse.o \ - src/shader/grammar_mesa.o \ - src/shader/nvfragparse.o \ - src/shader/nvprogram.o \ - src/shader/nvvertexec.o \ - src/shader/nvvertparse.o \ - src/shader/program.o - -MESA_ASM_C_OBJECTS = \ - src/x86/common_x86.o \ - src/x86/x86.o \ - src/x86/3dnow.o \ - src/x86/sse.o \ - src/sparc/sparc.o - -MESA_X86_OBJECTS = \ - src/x86/common_x86_asm.o \ - src/x86/x86_xform2.o \ - src/x86/x86_xform3.o \ - src/x86/x86_xform4.o \ - src/x86/x86_cliptest.o \ - src/x86/mmx_blend.o \ - src/x86/3dnow_xform1.o \ - src/x86/3dnow_xform2.o \ - src/x86/3dnow_xform3.o \ - src/x86/3dnow_xform4.o \ - src/x86/3dnow_normal.o \ - src/x86/sse_xform1.o \ - src/x86/sse_xform2.o \ - src/x86/sse_xform3.o \ - src/x86/sse_xform4.o \ - src/x86/sse_normal.o \ - src/tnl/t_vtx_x86_gcc.o - -MESA_X86_API_OBJECTS = \ - src/x86/glapi_x86.o - -MESA_SPARC_OBJECTS = \ - src/sparc/clip.o \ - src/sparc/norm.o \ - src/sparc/xform.o - -MESA_SPARC_API_OBJECTS = \ - src/sparc/glapi_sparc.o - -MESA_COMMON_DRIVER_OBJECTS = \ - src/drivers/common/driverfuncs.o - -MESA_ICD_DRIVER_OBJECTS = \ - src/drivers/windows/gdi/wmesa.o \ - src/drivers/windows/icd/icd.o - -### All the core C source-objects - -MESA_CORE_OBJECTS = \ - $(MESA_MAIN_OBJECTS) \ - $(MESA_GLAPI_OBJECTS) \ - $(MESA_MATH_OBJECTS) \ - $(MESA_ARRAY_CACHE_OBJECTS) \ - $(MESA_TNL_OBJECTS) \ - $(MESA_SHADER_OBJECTS) \ - $(MESA_SWRAST_OBJECTS) \ - $(MESA_SWRAST_SETUP_OBJECTS) \ - $(MESA_ASM_C_OBJECTS) - -MESA_DRIVER_OBJECTS = \ - $(MESA_ICD_DRIVER_OBJECTS) \ - $(MESA_COMMON_DRIVER_OBJECTS) - - -MESA_CFLAGS = $(MESA_OPTFLAGS) -MESA_CFLAGS += -DBUILD_GL32 -D_OPENGL32_ -DSTDCALL_API -DUSE_MGL_NAMESPACE - -ifeq ($(MESA_HAVE_X86),1) - MESA_CFLAGS += -DUSE_X86_ASM - MESA_CFLAGS += -DUSE_MMX_ASM - MESA_CFLAGS += -DUSE_SSE_ASM - MESA_CFLAGS += -DUSE_3DNOW_ASM - MESA_X86_OBJECTS += $(MESA_X86_API_OBJECTS) -else - MESA_X86_OBJECTS = -endif - - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NORC = yes - -TARGET_DEFONLY = yes - -TARGET_NAME = mesa32 - -TARGET_BASE = $(TARGET_BASE_LIB_MESA32) - -TARGET_CFLAGS = -D__USE_W32API -Wall $(MESA_CFLAGS) $(MESA_INCLUDE_DIRS) - -TARGET_ASFLAGS = $(TARGET_CFLAGS) - -TARGET_LFLAGS = -Wl,--enable-stdcall-fixup - -TARGET_GCCLIBS = gdi32 - -TARGET_OBJECTS = $(MESA_CORE_OBJECTS) $(MESA_X86_OBJECTS) $(MESA_DRIVER_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -#include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/mesa32/mesa32.xml b/reactos/lib/mesa32/mesa32.xml new file mode 100644 index 00000000000..3cc6a80e020 --- /dev/null +++ b/reactos/lib/mesa32/mesa32.xml @@ -0,0 +1,209 @@ + + + -Wl,--enable-stdcall-fixup + include + src + src/main + src/glapi + src/math + src/tnl + src/shader + src/swrast + src/swrast_setup + + + + + + + + + + ntdll + kernel32 + gdi32 + + + ac_context.c + ac_import.c + + + + driverfuncs.c + + + + wmesa.c + + + icd.c + + + + + glapi.c + glthread.c + + + api_arrayelt.c + api_loopback.c + api_noop.c + api_validate.c + accum.c + attrib.c + blend.c + bufferobj.c + buffers.c + clip.c + colortab.c + context.c + convolve.c + debug.c + depth.c + dispatch.c + dlist.c + drawpix.c + enable.c + enums.c + eval.c + extensions.c + feedback.c + fog.c + get.c + hash.c + hint.c + histogram.c + image.c + imports.c + light.c + lines.c + matrix.c + occlude.c + pixel.c + points.c + polygon.c + rastpos.c + state.c + stencil.c + texcompress.c + texcompress_s3tc.c + texcompress_fxt1.c + texformat.c + teximage.c + texobj.c + texstate.c + texstore.c + varray.c + vtxfmt.c + + + m_debug_clip.c + m_debug_norm.c + m_debug_xform.c + m_eval.c + m_matrix.c + m_translate.c + m_vector.c + m_xform.c + + + s_fragprog_to_c.c + s_aaline.c + s_aatriangle.c + s_accum.c + s_alpha.c + s_alphabuf.c + s_auxbuffer.c + s_bitmap.c + s_blend.c + s_buffers.c + s_copypix.c + s_context.c + s_depth.c + s_drawpix.c + s_feedback.c + s_fog.c + s_imaging.c + s_lines.c + s_logic.c + s_masking.c + s_nvfragprog.c + s_pixeltex.c + s_points.c + s_readpix.c + s_span.c + s_stencil.c + s_tcc.c + s_texture.c + s_texstore.c + s_triangle.c + s_zoom.c + + + ss_context.c + ss_triangle.c + + + arbfragparse.c + arbprogparse.c + arbprogram.c + arbvertparse.c + grammar_mesa.c + nvfragparse.c + nvprogram.c + nvvertexec.c + nvvertparse.c + program.c + + + t_array_api.c + t_array_import.c + t_context.c + t_pipeline.c + t_save_api.c + t_save_loopback.c + t_save_playback.c + t_vb_fog.c + t_vb_light.c + t_vb_normals.c + t_vb_points.c + t_vb_program.c + t_vb_render.c + t_vb_texgen.c + t_vb_texmat.c + t_vb_vertex.c + t_vertex.c + t_vertex_c.c + t_vertex_codegen.c + t_vtx_api.c + t_vtx_generic.c + t_vtx_eval.c + t_vtx_exec.c + t_vtx_x86.c + t_vtx_x86_gcc.S + + + 3dnow.c + 3dnow_normal.S + 3dnow_xform1.S + 3dnow_xform2.S + 3dnow_xform3.S + 3dnow_xform4.S + common_x86.c + common_x86_asm.S + glapi_x86.S + mmx_blend.S + sse.c + sse_normal.S + sse_xform1.S + sse_xform2.S + sse_xform3.S + sse_xform4.S + x86.c + x86_xform2.S + x86_xform3.S + x86_xform4.S + x86_cliptest.S + + + diff --git a/reactos/lib/midimap/makefile b/reactos/lib/midimap/makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/midimap/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/midimap/midimap.c b/reactos/lib/midimap/midimap.c index 67446c278bc..42d6094f0cf 100644 --- a/reactos/lib/midimap/midimap.c +++ b/reactos/lib/midimap/midimap.c @@ -23,6 +23,7 @@ * IDF file loading */ +#include #include #include #include diff --git a/reactos/lib/midimap/midimap.xml b/reactos/lib/midimap/midimap.xml new file mode 100644 index 00000000000..7b02aa0383e --- /dev/null +++ b/reactos/lib/midimap/midimap.xml @@ -0,0 +1,22 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + advapi32 + user32 + winmm + midimap.c + midimap.rc + midimap.spec + diff --git a/reactos/lib/mmdrv/Makefile b/reactos/lib/mmdrv/Makefile deleted file mode 100644 index fc7a55b3d14..00000000000 --- a/reactos/lib/mmdrv/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NORC = yes - -TARGET_NAME = mmdrv - -# -fno-builtin -TARGET_CFLAGS = -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -DUNICODE -D_UNICODE -Wall -Werror - -TARGET_LFLAGS = - -TARGET_SDKLIBS = winmm.a ntdll.a - -TARGET_BASE = $(TARGET_BASE_LIB_MMDRV) - -TARGET_OBJECTS = \ - auxil.o \ - entry.o \ - midi.o \ - utils.o \ - wave.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/mmdrv/mmdrv.xml b/reactos/lib/mmdrv/mmdrv.xml new file mode 100644 index 00000000000..ddcd5463fe7 --- /dev/null +++ b/reactos/lib/mmdrv/mmdrv.xml @@ -0,0 +1,15 @@ + + + . + + + + ntdll + kernel32 + winmm + auxil.c + entry.c + midi.c + utils.c + wave.c + diff --git a/reactos/lib/mpr/Makefile b/reactos/lib/mpr/Makefile deleted file mode 100644 index 9167641e668..00000000000 --- a/reactos/lib/mpr/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 7970 2004-02-01 19:48:44Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/mpr/mpr.xml b/reactos/lib/mpr/mpr.xml new file mode 100644 index 00000000000..68b7e805f6c --- /dev/null +++ b/reactos/lib/mpr/mpr.xml @@ -0,0 +1,25 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + advapi32 + user32 + auth.c + mpr_main.c + multinet.c + nps.c + pwcache.c + wnet.c + mpr.rc + mpr.spec + diff --git a/reactos/lib/msacm/makefile b/reactos/lib/msacm/makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/msacm/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/msacm/msacm32.xml b/reactos/lib/msacm/msacm32.xml new file mode 100644 index 00000000000..75a42b29dcf --- /dev/null +++ b/reactos/lib/msacm/msacm32.xml @@ -0,0 +1,26 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + advapi32 + user32 + winmm + driver.c + filter.c + format.c + internal.c + msacm32_main.c + pcmconverter.c + stream.c + msacm32.spec + diff --git a/reactos/lib/msafd/makefile b/reactos/lib/msafd/makefile deleted file mode 100644 index ebc5084e46f..00000000000 --- a/reactos/lib/msafd/makefile +++ /dev/null @@ -1,37 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = msafd - -TARGET_BASE = $(TARGET_BASE_LIB_MSAFD) - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -DUNICODE \ - -D__USE_W32API - -TARGET_LFLAGS = -nostartfiles -nostdlib - -MISC_OBJECTS = \ - misc/dllmain.o misc/event.o misc/helpers.o \ - misc/sndrcv.o misc/stubs.o - -TARGET_OBJECTS = $(MISC_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/msafd/msafd.xml b/reactos/lib/msafd/msafd.xml new file mode 100644 index 00000000000..0b031392230 --- /dev/null +++ b/reactos/lib/msafd/msafd.xml @@ -0,0 +1,19 @@ + + + include + + + + + ntdll + kernel32 + advapi32 + + dllmain.c + event.c + helpers.c + sndrcv.c + stubs.c + + msafd.rc + diff --git a/reactos/lib/msgina/makefile b/reactos/lib/msgina/makefile index 0477de18e63..0f0ed0ab01b 100644 --- a/reactos/lib/msgina/makefile +++ b/reactos/lib/msgina/makefile @@ -1,46 +1,5 @@ -# $Id$ +# This file is automatically generated. -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = msgina - -TARGET_INSTALLDIR = system32 - -TARGET_BASE = $(TARGET_BASE_LIB_MSGINA) - -TARGET_CFLAGS = \ - -I./include \ - -DUNICODE \ - -D_UNICODE \ - -D__USE_W32API \ - -D__REACTOS__ \ - -Wall \ - -Werror \ - -fno-builtin - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a user32.a - -TARGET_GCCLIBS = gcc - -TARGET_PCH = - -TARGET_CLEAN = - -TARGET_OBJECTS = msgina.o stubs.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: ./TAGS +TOP = ..\.. +DEFAULT = msgina +include $(TOP)/proxy.mak diff --git a/reactos/lib/msgina/msgina.xml b/reactos/lib/msgina/msgina.xml new file mode 100644 index 00000000000..92f942fa6b7 --- /dev/null +++ b/reactos/lib/msgina/msgina.xml @@ -0,0 +1,16 @@ + + + . + include + + + + + ntdll + kernel32 + advapi32 + user32 + msgina.c + stubs.c + msgina.rc + diff --git a/reactos/lib/msi/Makefile b/reactos/lib/msi/Makefile deleted file mode 100644 index 27f78dcd1af..00000000000 --- a/reactos/lib/msi/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 11877 2004-11-30 19:10:50Z jimtabor $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/msi/msi.xml b/reactos/lib/msi/msi.xml new file mode 100644 index 00000000000..221c50fa42a --- /dev/null +++ b/reactos/lib/msi/msi.xml @@ -0,0 +1,53 @@ + + + . + include/wine + + + 0x600 + 0x501 + 0x501 + wine + uuid + ntdll + kernel32 + user32 + gdi32 + advapi32 + shell32 + winmm + cabinet + ole32 + oleaut32 + version + action.c + appsearch.c + cond.tab.c + create.c + custom.c + database.c + delete.c + dialog.c + distinct.c + format.c + handle.c + insert.c + msi.c + msiquery.c + order.c + package.c + preview.c + record.c + registry.c + regsvr.c + select.c + sql.tab.c + string.c + suminfo.c + table.c + tokenize.c + update.c + where.c + msi.spec + msi.rc + diff --git a/reactos/lib/msimg32/Makefile b/reactos/lib/msimg32/Makefile deleted file mode 100644 index 2fc0aaff00a..00000000000 --- a/reactos/lib/msimg32/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 7618 2004-01-14 01:47:46Z sedwards $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/msimg32/msimg32.xml b/reactos/lib/msimg32/msimg32.xml new file mode 100644 index 00000000000..620a937b044 --- /dev/null +++ b/reactos/lib/msimg32/msimg32.xml @@ -0,0 +1,11 @@ + + + . + include + + ntdll + kernel32 + gdi32 + msimg32_main.c + msimg32.spec + diff --git a/reactos/lib/msvcrt/Makefile b/reactos/lib/msvcrt/Makefile deleted file mode 100644 index 89bc127525e..00000000000 --- a/reactos/lib/msvcrt/Makefile +++ /dev/null @@ -1,42 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = msvcrt - -TARGET_PCH = precomp.h - -TARGET_BASE = $(TARGET_BASE_LIB_MSVCRT) - -# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports -RM_AT_FROM_SYMBOLS = no - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = crt.a string.a kernel32.a ntdll.a wine.a - -TARGET_GCCLIBS = gcc - -TARGET_CFLAGS = -D__USE_W32API -D_MSVCRT_LIB_ -Wall -Werror -I../crt/include - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += \ - -D_DISABLE_TIDENTS \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DUSE_MSVCRT_PREFIX \ - -D_MT - -TARGET_OBJECTS = dllmain.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/msvcrt/msvcrt.def b/reactos/lib/msvcrt/msvcrt.def index 1156b11368b..4aa531e960b 100644 --- a/reactos/lib/msvcrt/msvcrt.def +++ b/reactos/lib/msvcrt/msvcrt.def @@ -116,9 +116,9 @@ __doserrno __fpecode __getmainargs __initenv DATA -__isascii -__iscsym -__iscsymf +__isascii=NTDLL.__isascii +__iscsym=NTDLL.__iscsym +__iscsymf=NTDLL.__iscsymf __lc_codepage __lc_collate_cp __lc_handle @@ -160,7 +160,7 @@ __setlc_active DATA __setusermatherr __threadhandle __threadid -__toascii +__toascii=NTDLL.__toascii __unDName=stub __unDNameEx=stub __unguarded_readlc_active DATA @@ -205,7 +205,7 @@ _aligned_realloc=stub _amsg_exit _assert _atodbl=stub -_atoi64 +_atoi64=NTDLL._atoi64 _atoldbl=stub _beep _beginthread @@ -326,8 +326,8 @@ _heapset _heapused=stub _heapwalk _hypot -_i64toa -_i64tow +_i64toa=NTDLL._i64toa +_i64tow=NTDLL._i64tow _initterm _inp=stub _inpd=stub @@ -365,8 +365,8 @@ _ismbcupper _ismbslead _ismbstrail _isnan -_itoa -_itow +_itoa=NTDLL._itoa +_itow=NTDLL._itow _j0 _j1 _jn @@ -384,7 +384,7 @@ _lrotr _lsearch _lseek _lseeki64 -_ltoa +_ltoa=NTDLL._ltoa _ltow _makepath _mbbtombc @@ -443,7 +443,7 @@ _mbstok _mbstrlen _mbsupr _memccpy -_memicmp +_memicmp=NTDLL._memicmp _mkdir _mktemp _mktime64=stub @@ -495,10 +495,10 @@ _setmbcp _setmode _setsystime _sleep -_snprintf +_snprintf=crt__snprintf _snscanf=stub _snwscanf=stub -_snwprintf +_snwprintf=crt__snwprintf _sopen _spawnl _spawnle @@ -508,7 +508,7 @@ _spawnv _spawnve _spawnvp _spawnvpe -_splitpath +_splitpath=NTDLL._splitpath _stat _stat64=stub _stati64 @@ -517,11 +517,11 @@ _strcmpi _strdate _strdup _strerror -_stricmp +_stricmp=NTDLL._stricmp _stricoll -_strlwr +_strlwr=NTDLL._strlwr _strncoll -_strnicmp +_strnicmp=NTDLL._strnicmp _strnicoll _strnset _strrev @@ -538,14 +538,14 @@ _telli64 _tempnam _time64=stub _timezone DATA -_tolower -_toupper +_tolower=NTDLL._tolower +_toupper=NTDLL._toupper _tzname DATA _tzset -_ui64toa -_ui64tow -_ultoa -_ultow +_ui64toa=NTDLL._i64toa +_ui64tow=NTDLL._i64tow +_ultoa=NTDLL._ultoa +_ultow=NTDLL._ultow _umask _ungetch _unlink @@ -638,8 +638,8 @@ _wsystem=stub _wtempnam _wtmpnam _wtof=stub -_wtoi -_wtoi64 +_wtoi=NTDLL._wtoi +_wtoi64=NTDLL._wtoi64 _wtol _wunlink _wutime @@ -648,29 +648,29 @@ _y0 _y1 _yn abort -abs +abs=NTDLL.abs acos asctime asin -atan +atan=NTDLL.atan atan2 atexit atof -atoi -atol -bsearch +atoi=NTDLL.atoi +atol=NTDLL.atol +bsearch=NTDLL.bsearch calloc -ceil +ceil=NTDLL.ceil clearerr clock -cos +cos=NTDLL.cos cosh ctime difftime div exit exp -fabs +fabs=NTDLL.fabs fclose feof ferror @@ -680,7 +680,7 @@ fgetpos fgets fgetwc fgetws -floor +floor=NTDLL.floor fmod fopen fprintf @@ -707,42 +707,42 @@ getwc getwchar gmtime is_wctype -isalnum -isalpha -iscntrl -isdigit -isgraph +isalnum=NTDLL.isalnum +isalpha=NTDLL.isalpha +iscntrl=NTDLL.iscntrl +isdigit=NTDLL.isdigit +isgraph=NTDLL.isgraph isleadbyte -islower -isprint -ispunct -isspace -isupper +islower=NTDLL.islower +isprint=NTDLL.isprint +ispunct=NTDLL.ispunct +isspace=NTDLL.isspace +isupper=NTDLL.isupper iswalnum -iswalpha +iswalpha=NTDLL.iswalpha iswascii iswcntrl -iswctype -iswdigit +iswctype=NTDLL.iswctype +iswdigit=NTDLL.iswdigit iswgraph -iswlower +iswlower=NTDLL.iswlower iswprint iswpunct -iswspace +iswspace=NTDLL.iswspace iswupper -iswxdigit -isxdigit -labs +iswxdigit=NTDLL.iswxdigit +isxdigit=NTDLL.isxdigit +labs=NTDLL.labs ldexp ldiv localeconv localtime -log +log=NTDLL.log log10 longjmp malloc mblen -mbstowcs +mbstowcs=NTDLL.mbstowcs mbtowc memchr memcmp @@ -752,14 +752,14 @@ memset mktime modf perror -pow +pow=NTDLL.pow printf putc putchar puts putwc putwchar -qsort +qsort=NTDLL.qsort raise rand realloc @@ -771,15 +771,15 @@ setbuf setlocale setvbuf signal -sin +sin=NTDLL.sin sinh -sprintf -sqrt +sprintf=crt_sprintf +sqrt=NTDLL.sqrt srand -sscanf +sscanf=crt_sscanf strcat strchr -strcmp +strcmp=NTDLL.strcmp strcoll strcpy strcspn @@ -795,21 +795,21 @@ strspn strstr strtod strtok -strtol +strtol=NTDLL.strtol strtoul strxfrm -swprintf +swprintf=crt_swprintf swscanf system -tan +tan=NTDLL.tan tanh time tmpfile tmpnam tolower -toupper -towlower -towupper +toupper=NTDLL.toupper +towlower=NTDLL.towlower +towupper=NTDLL.towupper ungetc ungetwc vfprintf @@ -835,9 +835,9 @@ wcsspn wcsstr wcstod wcstok -wcstol +wcstol=NTDLL.wcstol wcstombs -wcstoul +wcstoul=NTDLL.wcstoul wcsxfrm wctomb wprintf diff --git a/reactos/lib/msvcrt/msvcrt.xml b/reactos/lib/msvcrt/msvcrt.xml new file mode 100644 index 00000000000..e51da4a111c --- /dev/null +++ b/reactos/lib/msvcrt/msvcrt.xml @@ -0,0 +1,25 @@ + + -nostartfiles + --enable-stdcall-fixup + -nostdlib + -lgcc + + . + include + + + 0x600 + 0x501 + + + + + crt + string + kernel32 + ntdll + wine + precomp.h + dllmain.c + msvcrt.rc + diff --git a/reactos/lib/msvcrt20/Makefile b/reactos/lib/msvcrt20/Makefile deleted file mode 100644 index 74c67409044..00000000000 --- a/reactos/lib/msvcrt20/Makefile +++ /dev/null @@ -1,39 +0,0 @@ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = msvcrt20 - -TARGET_BASE = $(TARGET_BASE_LIB_MSVCRT20) - -# don't remove @nn from exported symbols - needed so dlltool doesn't mess up mangled c++ exports -RM_AT_FROM_SYMBOLS = no - -TARGET_LFLAGS = -nostartfiles --enable-stdcall-fixup - -TARGET_SDKLIBS = wine.a string.a kernel32.a ntdll.a - -TARGET_GCCLIBS = gcc - -TARGET_CFLAGS = -D__USE_W32API -D_MSVCRT_LIB_ -Wall - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += \ - -D_DISABLE_TIDENTS \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DUSE_MSVCRT_PREFIX \ - -D_MT - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/msvcrt20/msvcrt20.xml b/reactos/lib/msvcrt20/msvcrt20.xml new file mode 100644 index 00000000000..f235fa4b671 --- /dev/null +++ b/reactos/lib/msvcrt20/msvcrt20.xml @@ -0,0 +1,17 @@ + + + . + + + + 0x600 + 0x501 + + + wine + string + ntdll + kernel32 + msvcrt20.c + msvcrt20.rc + diff --git a/reactos/lib/netapi32/makefile b/reactos/lib/netapi32/makefile deleted file mode 100644 index fa2e9d9f853..00000000000 --- a/reactos/lib/netapi32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/netapi32/nbt.c b/reactos/lib/netapi32/nbt.c index 3cb6d63ce80..2caf9239745 100644 --- a/reactos/lib/netapi32/nbt.c +++ b/reactos/lib/netapi32/nbt.c @@ -65,6 +65,7 @@ * See also other FIXMEs in the code. */ +#include #include "config.h" #include diff --git a/reactos/lib/netapi32/netapi32.xml b/reactos/lib/netapi32/netapi32.xml new file mode 100644 index 00000000000..0c2b0a7fd94 --- /dev/null +++ b/reactos/lib/netapi32/netapi32.xml @@ -0,0 +1,30 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + wine + ntdll + kernel32 + advapi32 + ws2_32 + iphlpapi + access.c + apibuf.c + browsr.c + nbcmdqueue.c + nbnamecache.c + nbt.c + netapi32.c + netbios.c + wksta.c + netapi32.rc + netapi32.spec + diff --git a/reactos/lib/ntdll/ldr/utils.c b/reactos/lib/ntdll/ldr/utils.c index 13013316a97..093b75bce0b 100644 --- a/reactos/lib/ntdll/ldr/utils.c +++ b/reactos/lib/ntdll/ldr/utils.c @@ -289,7 +289,6 @@ LdrpInitializeTlsForProccess(VOID) * Is this region allways writable ? */ *(PULONG)TlsDirectory->AddressOfIndex = Module->TlsIndex; - CHECKPOINT1; } Entry = Entry->Flink; } @@ -1969,7 +1968,6 @@ PEPFUNC LdrPEStartup (PVOID ImageBase, RtlLeaveCriticalSection(NtCurrentPeb()->LoaderLock); if (!NT_SUCCESS(Status)) { - CHECKPOINT1; return NULL; } @@ -2158,7 +2156,6 @@ LdrpUnloadModule(PLDR_MODULE Module, if (LoadCount == 0) { /* ?????????????????? */ - CHECKPOINT1; } else if (LoadCount == 1) { diff --git a/reactos/lib/ntdll/makefile b/reactos/lib/ntdll/makefile deleted file mode 100644 index 73032aa2af6..00000000000 --- a/reactos/lib/ntdll/makefile +++ /dev/null @@ -1,151 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_BOOTSTRAP = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = ntdll - -TARGET_CFLAGS = -g -D__NTDLL__ -Werror -Wall - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ifneq ($(DBG), 0) -TARGET_CFLAGS += -DDBG -endif - -TARGET_ASFLAGS = -I $(PATH_TO_TOP)/include - -TARGET_LFLAGS = -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 \ - -nostartfiles -nostdlib - -TARGET_SDKLIBS = rtl.a rosrtl.a string.a - -TARGET_GCCLIBS = gcc - -TARGET_BASE = $(TARGET_BASE_LIB_NTDLL) - -TARGET_PATH = def - -TARGET_ENTRY = 0x0 - -CSR_OBJECTS = \ - csr/capture.o \ - csr/lpc.o \ - csr/probe.o \ - csr/thread.o - -DBG_OBJECTS = \ - dbg/brkpoint.o \ - dbg/debug.o \ - dbg/print.o - -LDR_OBJECTS = \ - ldr/entry.o \ - ldr/res.o \ - ldr/startup.o \ - ldr/utils.o - -RTL_I386_OBJECTS = \ - rtl/i386/ftol.o - -RTL_OBJECTS = \ - rtl/apc.o \ - rtl/atom.o \ - rtl/callback.o \ - rtl/crc32.o \ - rtl/critical.o \ - rtl/dbgbuffer.o \ - rtl/exception.o \ - rtl/handle.o \ - rtl/math.o \ - rtl/message.o \ - rtl/misc.o \ - rtl/path.o \ - rtl/process.o \ - rtl/propvar.o \ - rtl/rangelist.o \ - rtl/resource.o \ - rtl/teb.o \ - rtl/timerqueue.o \ - rtl/libsupp.o - - -STDIO_OBJECTS = \ - stdio/sprintf.o \ - stdio/sscanf.o \ - stdio/swprintf.o - -STDLIB_OBJECTS = \ - stdlib/abs.o \ - stdlib/atoi.o \ - stdlib/atoi64.o \ - stdlib/atol.o \ - stdlib/bsearch.o \ - stdlib/itoa.o \ - stdlib/itow.o \ - stdlib/labs.o \ - stdlib/lfind.o \ - stdlib/mbstowcs.o \ - stdlib/splitp.o \ - stdlib/strtol.o \ - stdlib/strtoul.o \ - stdlib/wcstol.o \ - stdlib/wcstombs.o \ - stdlib/wcstoul.o \ - stdlib/wtoi.o \ - stdlib/wtoi64.o \ - stdlib/wtol.o - -STRING_OBJECTS = \ - string/ctype.o \ - string/memicmp.o \ - string/stricmp.o \ - string/strlwr.o \ - string/strnicmp.o \ - string/strpbrk.o \ - string/strstr.o \ - string/strupr.o \ - string/wstring.o - -ARCH_OBJECTS = \ - $(RTL_I386_OBJECTS) - -TARGET_OBJECTS = \ - napi.o \ - $(ARCH_OBJECTS) \ - $(CSR_OBJECTS) \ - $(DBG_OBJECTS) \ - $(LDR_OBJECTS) \ - $(RTL_OBJECTS) \ - $(STDIO_OBJECTS) \ - $(STDLIB_OBJECTS) \ - $(STRING_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) -DEP_EXCLUDE_FILTER = napi.% - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -%/TAGS: - etags -o $(@D)/TAGS $(@D)/\*.c - -etags: csr/TAGS dbg/TAGS ldr/TAGS main/TAGS rtl/TAGS stdio/TAGS stdlib/TAGS string/TAGS stubs/TAGS - etags -i csr/TAGS -i dbg/TAGS -i ldr/TAGS -i main/TAGS -i rtl/TAGS -i stdio/TAGS -i stdlib/TAGS -i string/TAGS -i stubs/TAGS - - -docu: - doxygen Doxyfile - -.PHONY: docu - - -# EOF diff --git a/reactos/lib/ntdll/ntdll.xml b/reactos/lib/ntdll/ntdll.xml new file mode 100644 index 00000000000..96ac96c6f39 --- /dev/null +++ b/reactos/lib/ntdll/ntdll.xml @@ -0,0 +1,96 @@ + + + + + + rtl + rosrtl + string + -lgcc + + capture.c + lpc.c + probe.c + thread.c + + + brkpoint.c + debug.c + print.c + + + entry.S + res.c + startup.c + utils.c + + + dllmain.c + + + + ftol.c + + apc.c + atom.c + callback.c + crc32.c + critical.c + dbgbuffer.c + exception.c + handle.c + intrlck.c + libsupp.c + math.c + message.c + misc.c + path.c + process.c + propvar.c + rangelist.c + resource.c + teb.c + timerqueue.c + + + sprintf.c + sscanf.c + swprintf.c + + + abs.c + atoi64.c + atoi.c + atol.c + bsearch.c + itoa.c + itow.c + labs.c + lfind.c + mbstowcs.c + splitp.c + strtol.c + strtoul.c + wcstol.c + wcstombs.c + wcstoul.c + wtoi64.c + wtoi.c + wtol.c + + + ctype.c + memicmp.c + stricmp.c + strlwr.c + strnicmp.c + strpbrk.c + strstr.c + strupr.c + wstring.c + + + ntdll.rc + + napi.S + diff --git a/reactos/lib/ntdll/rtl/intrlck.c b/reactos/lib/ntdll/rtl/intrlck.c index 7cc71987ffe..9504cb30dcb 100644 --- a/reactos/lib/ntdll/rtl/intrlck.c +++ b/reactos/lib/ntdll/rtl/intrlck.c @@ -116,14 +116,14 @@ InterlockedExchange(LPLONG target, LONG value ) * RETURNS * Prior value of value pointed to by Destination */ -PVOID +LONG STDCALL InterlockedCompareExchange( - PVOID *Destination, - PVOID Exchange, - PVOID Comperand ) + PLONG Destination, + LONG Exchange, + LONG Comperand) { - PVOID ret; + LONG ret; __asm__ ( /* lock for SMP systems */ "lock\n\t" "cmpxchgl %2,(%1)" diff --git a/reactos/lib/ole32/makefile b/reactos/lib/ole32/makefile deleted file mode 100644 index 263de228b36..00000000000 --- a/reactos/lib/ole32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7409 2004-01-02 19:49:47Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/ole32/ole32.xml b/reactos/lib/ole32/ole32.xml new file mode 100644 index 00000000000..54e1d2f00e0 --- /dev/null +++ b/reactos/lib/ole32/ole32.xml @@ -0,0 +1,54 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + wine + uuid + ntdll + kernel32 + advapi32 + gdi32 + user32 + rpcrt4 + antimoniker.c + bindctx.c + clipboard.c + compobj.c + compositemoniker.c + datacache.c + dictionary.c + defaulthandler.c + errorinfo.c + filemoniker.c + ftmarshal.c + git.c + hglobalstream.c + ifs.c + itemmoniker.c + marshal.c + memlockbytes.c + moniker.c + ole2.c + ole2stubs.c + ole2impl.c + ole32_main.c + oleobj.c + oleproxy.c + regsvr.c + rpc.c + stg_bigblockfile.c + stg_prop.c + stg_stream.c + storage32.c + stubmanager.c + ole32res.rc + ole32.spec + diff --git a/reactos/lib/oleaut32/makefile b/reactos/lib/oleaut32/makefile deleted file mode 100644 index 72b90c6321f..00000000000 --- a/reactos/lib/oleaut32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 8082 2004-02-07 18:53:59Z mf $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/oleaut32/oleaut32.xml b/reactos/lib/oleaut32/oleaut32.xml new file mode 100644 index 00000000000..c9b3c047575 --- /dev/null +++ b/reactos/lib/oleaut32/oleaut32.xml @@ -0,0 +1,45 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + + + wine + uuid + ntdll + kernel32 + advapi32 + gdi32 + user32 + rpcrt4 + ole32 + comctl32 + urlmon + connpt.c + dispatch.c + hash.c + oaidl_p.c + oleaut.c + olefont.c + olepicture.c + recinfo.c + regsvr.c + safearray.c + stubs.c + tmarshal.c + typelib.c + typelib2.c + usrmarshal.c + varformat.c + variant.c + vartype.c + oleaut32.spec + diff --git a/reactos/lib/olepro32/Makefile b/reactos/lib/olepro32/Makefile deleted file mode 100644 index 87e171d4ace..00000000000 --- a/reactos/lib/olepro32/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 8395 2004-02-26 02:01:13Z sedwards $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/olepro32/olepro32.xml b/reactos/lib/olepro32/olepro32.xml new file mode 100644 index 00000000000..45cf3ba4684 --- /dev/null +++ b/reactos/lib/olepro32/olepro32.xml @@ -0,0 +1,19 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + oleaut32 + olepro32stubs.c + olepro32.rc + olepro32.spec + diff --git a/reactos/lib/opengl32/Makefile b/reactos/lib/opengl32/Makefile deleted file mode 100644 index b3f181e628f..00000000000 --- a/reactos/lib/opengl32/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NORC = yes - -TARGET_NAME = opengl32 - -# -fno-builtin -TARGET_CFLAGS = -D__USE_W32API -DUNICODE -Os -g3 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_LFLAGS = -lgdi32 -lntdll - -TARGET_BASE = $(TARGET_BASE_LIB_OPENGL32) - -TARGET_SDKLIBS = gdi32.a ntdll.a -# ntdll.a gdi32.a - may still need these - -TARGET_OBJECTS = \ - gl.o \ - opengl32.o \ - wgl.o \ - #tebimports.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/opengl32/opengl32.xml b/reactos/lib/opengl32/opengl32.xml new file mode 100644 index 00000000000..4d809a037fd --- /dev/null +++ b/reactos/lib/opengl32/opengl32.xml @@ -0,0 +1,13 @@ + + + . + + + + ntdll + kernel32 + gdi32 + gl.c + opengl32.c + wgl.c + diff --git a/reactos/lib/psapi/makefile b/reactos/lib/psapi/makefile deleted file mode 100644 index 5544321c859..00000000000 --- a/reactos/lib/psapi/makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = psapi - -TARGET_SDKLIBS = pseh.a epsapi.a ntdll.a kernel32.a - -TARGET_CFLAGS = -I./include -Wall -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -D_SEH_NO_NATIVE_NLG -D__USE_W32API - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_BASE = $(TARGET_BASE_LIB_PSAPI) - -TARGET_PCH = precomp.h - -TARGET_OBJECTS = malloc.o psapi.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/psapi/psapi.xml b/reactos/lib/psapi/psapi.xml new file mode 100644 index 00000000000..81a2cfe6a9f --- /dev/null +++ b/reactos/lib/psapi/psapi.xml @@ -0,0 +1,15 @@ + + + . + include + + + epsapi + pseh + ntdll + kernel32 + precomp.h + malloc.c + psapi.c + psapi.rc + diff --git a/reactos/lib/pseh/i386/setjmp.asm b/reactos/lib/pseh/i386/setjmp.asm index d2ac8ea7a1c..60a5cd7a331 100644 --- a/reactos/lib/pseh/i386/setjmp.asm +++ b/reactos/lib/pseh/i386/setjmp.asm @@ -22,9 +22,9 @@ segment .text use32 ; Note: the undecorated names are for Borland C++ (and possibly other compilers ; using the OMF format) -global SEHSetJmp +global _SEHSetJmp global __SEHSetJmp@4 -SEHSetJmp: +_SEHSetJmp: __SEHSetJmp@4: ; jump buffer mov eax, [esp+4] @@ -46,9 +46,9 @@ __SEHSetJmp@4: xor eax, eax ret 4 -global SEHLongJmp +global _SEHLongJmp global __SEHLongJmp@8 -SEHLongJmp: +_SEHLongJmp: __SEHLongJmp@8: ; return value mov eax, [esp+8] @@ -65,10 +65,9 @@ __SEHLongJmp@8: mov edi, [ecx+20] jmp edx - -global SEHLongJmp_KeepEsp +global _SEHLongJmp_KeepEsp global __SEHLongJmp_KeepEsp@8 -SEHLongJmp_KeepEsp: +_SEHLongJmp_KeepEsp: __SEHLongJmp_KeepEsp@8: ; return value mov eax, [esp+8] diff --git a/reactos/lib/pseh/makefile b/reactos/lib/pseh/makefile deleted file mode 100644 index 0572044e8c4..00000000000 --- a/reactos/lib/pseh/makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = pseh - -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Werror -Wall -D__USE_W32API - -include $(PATH_TO_TOP)/config -include makefile.$(ARCH) - -TARGET_OBJECTS = framebased.o $(TARGET_ARCH_OBJECTS) -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/pseh/pseh.xml b/reactos/lib/pseh/pseh.xml new file mode 100644 index 00000000000..f574aeb64b7 --- /dev/null +++ b/reactos/lib/pseh/pseh.xml @@ -0,0 +1,8 @@ + + + + framebased.asm + setjmp.asm + + framebased.c + diff --git a/reactos/lib/riched20/makefile b/reactos/lib/riched20/makefile deleted file mode 100644 index faf2fc04220..00000000000 --- a/reactos/lib/riched20/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 12852 2005-01-06 13:58:04Z mf $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/riched20/riched20.xml b/reactos/lib/riched20/riched20.xml new file mode 100644 index 00000000000..e67762220b5 --- /dev/null +++ b/reactos/lib/riched20/riched20.xml @@ -0,0 +1,34 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + uuid + wine + ntdll + kernel32 + user32 + gdi32 + caret.c + context.c + editor.c + list.c + paint.c + para.c + reader.c + richole.c + row.c + run.c + string.c + style.c + undo.c + wrap.c + writer.c + riched20.spec + diff --git a/reactos/lib/richedit/Makefile b/reactos/lib/richedit/Makefile deleted file mode 100644 index 843f63a7632..00000000000 --- a/reactos/lib/richedit/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 7978 2004-02-01 21:20:05Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/richedit/riched32.xml b/reactos/lib/richedit/riched32.xml new file mode 100644 index 00000000000..6500a260a72 --- /dev/null +++ b/reactos/lib/richedit/riched32.xml @@ -0,0 +1,19 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + user32 + riched20 + richedit.c + riched32.spec + diff --git a/reactos/lib/rosrtl/makefile b/reactos/lib/rosrtl/makefile deleted file mode 100644 index 6c0f6acbffc..00000000000 --- a/reactos/lib/rosrtl/makefile +++ /dev/null @@ -1,59 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = rosrtl - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a - -THREAD_OBJECTS = \ - thread/create.o \ - thread/exit.o \ - thread/stack.o \ - thread/priv.o - -STRING_OBJECTS = \ - string/append.o \ - string/resstr.o - -REGISTRY_OBJECTS = \ - registry/registry.o - -MISC_OBJECTS = \ - misc/devmode.o \ - misc/intrlck.o \ - misc/logfont.o \ - misc/qsort.o - -FILE_OBJECTS = \ - file/sparse.o \ - file/path.o - -RECMUTEX_OBJECTS = recmutex/recmutex.o - -include $(PATH_TO_TOP)/config - -include makefile.$(ARCH) - -TARGET_TYPE = library - -TARGET_NAME = rosrtl - -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror - -TARGET_OBJECTS = $(THREAD_OBJECTS) $(MISC_OBJECTS) $(STRING_OBJECTS) \ - $(REGISTRY_OBJECTS) $(FILE_OBJECTS) $(RECMUTEX_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/rosrtl/rosrtl.xml b/reactos/lib/rosrtl/rosrtl.xml new file mode 100644 index 00000000000..8c44836dd43 --- /dev/null +++ b/reactos/lib/rosrtl/rosrtl.xml @@ -0,0 +1,33 @@ + + + + sparse.c + + + devmode.c + intrlck.c + logfont.c + qsort.c + + + recmutex.c + + + registry.c + + + append.c + resstr.c + + + + context.c + stackexit.S + + create.c + exit.c + linearstack.c + priv.c + stack.c + + diff --git a/reactos/lib/rossym/Makefile b/reactos/lib/rossym/Makefile deleted file mode 100644 index 8fad567eef3..00000000000 --- a/reactos/lib/rossym/Makefile +++ /dev/null @@ -1,33 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = rossym - -include $(PATH_TO_TOP)/config - -TARGET_CFLAGS = -Wall -Werror -ffreestanding -D__USE_W32API - -TARGET_OBJECTS = \ - delete.o \ - find.o \ - fromfile.o \ - frommem.o \ - fromraw.o \ - getraw.o \ - init.o \ - initkm.o \ - initum.o \ - zwfile.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/lib/rossym/rossym.xml b/reactos/lib/rossym/rossym.xml new file mode 100644 index 00000000000..bcb0bca4cff --- /dev/null +++ b/reactos/lib/rossym/rossym.xml @@ -0,0 +1,13 @@ + + + delete.c + find.c + fromfile.c + frommem.c + fromraw.c + getraw.c + init.c + initkm.c + initum.c + zwfile.c + diff --git a/reactos/lib/rpcrt4/Makefile b/reactos/lib/rpcrt4/Makefile deleted file mode 100644 index 63b677ffcf6..00000000000 --- a/reactos/lib/rpcrt4/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 9303 2004-05-04 20:10:07Z navaraf $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/rpcrt4/rpcrt4.rc b/reactos/lib/rpcrt4/rpcrt4.rc new file mode 100644 index 00000000000..af8d55589bb --- /dev/null +++ b/reactos/lib/rpcrt4/rpcrt4.rc @@ -0,0 +1,7 @@ +#include + +#define REACTOS_VERSION_DLL +#define REACTOS_STR_FILE_DESCRIPTION "ReactOS RPC server API\0" +#define REACTOS_STR_INTERNAL_NAME "rpcrt4\0" +#define REACTOS_STR_ORIGINAL_FILENAME "rpcrt4.dll\0" +#include diff --git a/reactos/lib/rpcrt4/rpcrt4.xml b/reactos/lib/rpcrt4/rpcrt4.xml new file mode 100644 index 00000000000..bbf10b6c004 --- /dev/null +++ b/reactos/lib/rpcrt4/rpcrt4.xml @@ -0,0 +1,37 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + + + + wine + uuid + ntdll + kernel32 + advapi32 + iphlpapi + cproxy.c + cpsf.c + cstub.c + ndr_marshall.c + ndr_midl.c + ndr_ole.c + ndr_stubless.c + rpc_binding.c + rpc_epmap.c + rpc_message.c + rpc_server.c + rpcrt4_main.c + rpcss_np_client.c + rpcrt4.rc + rpcrt4.spec + diff --git a/reactos/lib/rtl/makefile b/reactos/lib/rtl/makefile deleted file mode 100644 index 005a46926b7..00000000000 --- a/reactos/lib/rtl/makefile +++ /dev/null @@ -1,79 +0,0 @@ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = rtl - -include $(PATH_TO_TOP)/config - -TARGET_CFLAGS = -Wall -Werror -ffreestanding - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ifneq ($(DBG), 0) -TARGET_CFLAGS += -DDBG -endif - -TARGET_OBJECTS = \ - access.o \ - acl.o \ - ppb.o \ - bit.o \ - thread.o \ - process.o \ - bitmap.o \ - bootdata.o \ - compress.o \ - dos8dot3.o \ - encode.o \ - env.o \ - error.o \ - exception.o \ - generictable.o \ - heap.o \ - image.o \ - largeint.o \ - luid.o \ - mem.o \ - network.o \ - nls.o \ - random.o \ - registry.o \ - sd.o \ - security.o \ - sid.o \ - splaytree.o \ - time.o \ - timezone.o \ - unicode.o \ - unicodeprefix.o \ - version.o \ - i386/chkstk.o \ - i386/exception.o \ - i386/except.o \ - i386/alldiv.o \ - i386/allmul.o \ - i386/allrem.o \ - i386/allshl.o \ - i386/allshr.o \ - i386/aulldiv.o \ - i386/aullrem.o \ - i386/aullshr.o \ - -# atom -# registry - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/lib/rtl/rtl.xml b/reactos/lib/rtl/rtl.xml new file mode 100644 index 00000000000..0e0082fcab9 --- /dev/null +++ b/reactos/lib/rtl/rtl.xml @@ -0,0 +1,49 @@ + + . + + allshl.s + aulldiv.s + aullrem.s + allshr.s + allmul.s + aullshr.s + alldiv.s + allrem.s + chkstk.s + except.s + exception.c + + access.c + acl.c + bit.c + bitmap.c + bootdata.c + compress.c + dos8dot3.c + encode.c + env.c + error.c + exception.c + generictable.c + heap.c + image.c + largeint.c + luid.c + mem.c + network.c + nls.c + ppb.c + process.c + random.c + registry.c + sd.c + security.c + sid.c + splaytree.c + thread.c + time.c + timezone.c + unicode.c + unicodeprefix.c + version.c + diff --git a/reactos/lib/samlib/makefile b/reactos/lib/samlib/makefile deleted file mode 100644 index ed9e7033d05..00000000000 --- a/reactos/lib/samlib/makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = samlib - -TARGET_BASE = $(TARGET_BASE_LIB_SAMLIB) - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a - -TARGET_CFLAGS = -Wall -Werror -fno-builtin - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_OBJECTS = dllmain.o samlib.o - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/samlib/samlib.xml b/reactos/lib/samlib/samlib.xml new file mode 100644 index 00000000000..6c71021f701 --- /dev/null +++ b/reactos/lib/samlib/samlib.xml @@ -0,0 +1,11 @@ + + + . + + ntdll + kernel32 + advapi32 + dllmain.c + samlib.c + samlib.rc + diff --git a/reactos/lib/secur32/Makefile b/reactos/lib/secur32/Makefile deleted file mode 100644 index 660c4b1b881..00000000000 --- a/reactos/lib/secur32/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = secur32 - -TARGET_BASE = $(TARGET_BASE_LIB_SECURE32) - -TARGET_SDKLIBS = ntdll.a - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -D__SECUR32__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_OBJECTS = lsa.o dllmain.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/secur32/secur32.xml b/reactos/lib/secur32/secur32.xml new file mode 100644 index 00000000000..7d0dd2dbfd8 --- /dev/null +++ b/reactos/lib/secur32/secur32.xml @@ -0,0 +1,11 @@ + + + . + + ntdll + kernel32 + advapi32 + dllmain.c + lsa.c + secur32.rc + diff --git a/reactos/lib/serialui/Makefile b/reactos/lib/serialui/Makefile deleted file mode 100644 index 829ba3edd62..00000000000 --- a/reactos/lib/serialui/Makefile +++ /dev/null @@ -1,36 +0,0 @@ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = serialui - -TARGET_BASE = $(TARGET_BASE_LIB_SERIALUI) - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -DUNICODE \ - -DLE \ - -DDBG \ - -D__USE_W32API - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = kernel32.a user32.a shlwapi.a - -TARGET_OBJECTS = serialui.o - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/serialui/serialui.xml b/reactos/lib/serialui/serialui.xml new file mode 100644 index 00000000000..56637e58765 --- /dev/null +++ b/reactos/lib/serialui/serialui.xml @@ -0,0 +1,12 @@ + + + . + + + + kernel32 + user32 + shlwapi + serialui.c + serialui.rc + diff --git a/reactos/lib/setupapi/cfgmgr.c b/reactos/lib/setupapi/cfgmgr.c index 777565a8778..517a7b9e96f 100644 --- a/reactos/lib/setupapi/cfgmgr.c +++ b/reactos/lib/setupapi/cfgmgr.c @@ -33,7 +33,7 @@ #include "rpc.h" -#include "pnp.h" +#include "pnp_c.h" #include "wine/debug.h" diff --git a/reactos/lib/setupapi/makefile b/reactos/lib/setupapi/makefile index d1665d6b8a8..efeec22f078 100644 --- a/reactos/lib/setupapi/makefile +++ b/reactos/lib/setupapi/makefile @@ -1,18 +1,5 @@ -# $Id: makefile 12852 2005-01-06 13:58:04Z mf $ +# This file is automatically generated. -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -TARGET_CLEAN = pnp_c.c pnp.h - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -WIDL_FLAGS = -o \ - -D _X86_ -D MIDL_PASS \ - -I $(PATH_TO_TOP)/w32api/include - -pnp_c.c pnp.h: $(PATH_TO_TOP)/include/idl/pnp.idl - $(WIDL) $(WIDL_FLAGS) -h -H pnp.h -c -C pnp_c.c $(PATH_TO_TOP)/include/idl/pnp.idl +TOP = ..\.. +DEFAULT = setupapi +include $(TOP)/proxy.mak diff --git a/reactos/lib/setupapi/setupapi.xml b/reactos/lib/setupapi/setupapi.xml new file mode 100644 index 00000000000..25242005655 --- /dev/null +++ b/reactos/lib/setupapi/setupapi.xml @@ -0,0 +1,36 @@ + + + . + include/wine + . + + + + + 0x600 + 0x501 + 0x501 + + + pnp_client + wine + ntdll + kernel32 + advapi32 + user32 + rpcrt4 + version + cfgmgr.c + devinst.c + dirid.c + diskspace.c + install.c + misc.c + parser.c + queue.c + setupcab.c + stubs.c + rpc.c + setupapi.rc + setupapi.spec + diff --git a/reactos/lib/shdocvw/Makefile b/reactos/lib/shdocvw/Makefile deleted file mode 100644 index 1d7edcca564..00000000000 --- a/reactos/lib/shdocvw/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 12297 2004-12-23 08:55:00Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk \ No newline at end of file diff --git a/reactos/lib/shdocvw/shdocvw.xml b/reactos/lib/shdocvw/shdocvw.xml new file mode 100644 index 00000000000..f803d48a060 --- /dev/null +++ b/reactos/lib/shdocvw/shdocvw.xml @@ -0,0 +1,32 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + wine + uuid + ntdll + kernel32 + advapi32 + user32 + ole32 + urlmon + classinfo.c + events.c + factory.c + misc.c + oleobject.c + persist.c + regsvr.c + shdocvw_main.c + webbrowser.c + shdocvw.rc + shdocvw.spec + diff --git a/reactos/lib/shell32/authors.c b/reactos/lib/shell32/authors.c new file mode 100644 index 00000000000..36ed8a39c25 --- /dev/null +++ b/reactos/lib/shell32/authors.c @@ -0,0 +1 @@ +const char * const SHELL_Authors[] = { "Copyright 1993-2005 WINE team", "Copyright 1998-2005 ReactOS Team", 0 }; diff --git a/reactos/lib/shell32/makefile b/reactos/lib/shell32/makefile deleted file mode 100644 index b48614a5ce0..00000000000 --- a/reactos/lib/shell32/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7409 2004-01-02 19:49:47Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/shell32/shell32.xml b/reactos/lib/shell32/shell32.xml new file mode 100644 index 00000000000..796703e0e1e --- /dev/null +++ b/reactos/lib/shell32/shell32.xml @@ -0,0 +1,64 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + + wine + uuid + ntdll + kernel32 + advapi32 + gdi32 + user32 + comctl32 + shlwapi + ole32 + authors.c + autocomplete.c + brsfolder.c + changenotify.c + classes.c + clipboard.c + control.c + cpanelfolder.c + dataobject.c + debughlp.c + dialogs.c + dragdrophelper.c + enumidlist.c + folders.c + iconcache.c + memorystream.c + pidl.c + regsvr.c + shell32_main.c + shelllink.c + shellole.c + shellord.c + shellpath.c + shellreg.c + shellstring.c + shfldr_desktop.c + shfldr_fs.c + shfldr_mycomp.c + shlexec.c + shlfileop.c + shlfolder.c + shlfsbind.c + shlmenu.c + shlview.c + shpolicy.c + shv_bg_cmenu.c + shv_item_cmenu.c + ros-systray.c + shres.rc + shell32.spec + diff --git a/reactos/lib/shlwapi/makefile b/reactos/lib/shlwapi/makefile deleted file mode 100644 index 263de228b36..00000000000 --- a/reactos/lib/shlwapi/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7409 2004-01-02 19:49:47Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/shlwapi/shlwapi.xml b/reactos/lib/shlwapi/shlwapi.xml new file mode 100644 index 00000000000..b6db72e57ee --- /dev/null +++ b/reactos/lib/shlwapi/shlwapi.xml @@ -0,0 +1,41 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + "" + -nostdlib + -lgcc + wine + uuid + msvcrt + ntdll + kernel32 + advapi32 + gdi32 + user32 + ole32 + oleaut32 + assoc.c + clist.c + istream.c + msgbox.c + ordinal.c + path.c + reg.c + regstream.c + shlwapi_main.c + stopwatch.c + string.c + thread.c + url.c + wsprintf.c + shlwapi.spec + diff --git a/reactos/lib/smdll/makefile b/reactos/lib/smdll/makefile deleted file mode 100644 index 44c3b188fc1..00000000000 --- a/reactos/lib/smdll/makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = smdll - -TARGET_SDKLIBS = smlib.a ntdll.a - -TARGET_CFLAGS = -I./include -Wall -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -#TARGET_BASE = - -TARGET_OBJECTS = \ - dllmain.o \ - query.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/smdll/smdll.xml b/reactos/lib/smdll/smdll.xml new file mode 100644 index 00000000000..a65e85378a4 --- /dev/null +++ b/reactos/lib/smdll/smdll.xml @@ -0,0 +1,10 @@ + + + . + + smlib + ntdll + dllmain.c + query.c + smdll.rc + diff --git a/reactos/lib/smlib/makefile b/reactos/lib/smlib/makefile index 9ec7cc1e38d..d3685931df9 100644 --- a/reactos/lib/smlib/makefile +++ b/reactos/lib/smlib/makefile @@ -1,35 +1,5 @@ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = smlib - -include $(PATH_TO_TOP)/config - -TARGET_CFLAGS = -Wall -Werror -ffreestanding - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -ifneq ($(DBG), 0) -TARGET_CFLAGS += -DDBG -endif - -TARGET_OBJECTS = \ - connect.o \ - execpgm.o \ - compses.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF +# This file is automatically generated. + +TOP = ..\.. +DEFAULT = smlib +include $(TOP)/proxy.mak diff --git a/reactos/lib/smlib/smlib.xml b/reactos/lib/smlib/smlib.xml new file mode 100644 index 00000000000..6b06eb10210 --- /dev/null +++ b/reactos/lib/smlib/smlib.xml @@ -0,0 +1,7 @@ + + . + + connect.c + execpgm.c + compses.c + diff --git a/reactos/lib/snmpapi/makefile b/reactos/lib/snmpapi/makefile deleted file mode 100644 index f8ff755b2ac..00000000000 --- a/reactos/lib/snmpapi/makefile +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: makefile - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = snmpapi - -TARGET_BASE = $(TARGET_BASE_LIB_SNMPAPI) - -TARGET_CFLAGS = -DUNICODE - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_SDKLIBS = ntdll.a kernel32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/snmpapi/snmpapi.xml b/reactos/lib/snmpapi/snmpapi.xml new file mode 100644 index 00000000000..da548cbf893 --- /dev/null +++ b/reactos/lib/snmpapi/snmpapi.xml @@ -0,0 +1,10 @@ + + + . + + + ntdll + kernel32 + snmpapi.c + snmpapi.rc + diff --git a/reactos/lib/string/Makefile b/reactos/lib/string/Makefile deleted file mode 100644 index d3a2904bdc6..00000000000 --- a/reactos/lib/string/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = string - -include $(PATH_TO_TOP)/config - -include Makefile.$(ARCH) - -TARGET_CFLAGS = -Wall -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -D__USE_W32API - -ifeq ($(DBG), 1) - TARGET_CFLAGS += -g -else - TARGET_CFLAGS += -fno-strict-aliasing -O6 -endif - -TARGET_OBJECTS = \ - memccpy.o \ - memchr.o \ - memcmp.o \ - memcpy.o \ - memmove.o \ - memset.o \ - strcat.o \ - strchr.o \ - strcmp.o \ - strcpy.o \ - strcspn.o \ - strlen.o \ - strncat.o \ - strncmp.o \ - strncpy.o \ - strnlen.o \ - strrchr.o \ - strspn.o \ - wcscat.o \ - wcschr.o \ - wcscmp.o \ - wcscpy.o \ - wcslen.o \ - wcsncat.o \ - wcsncmp.o \ - wcsncpy.o \ - wcsnlen.o \ - wcsrchr.o - -TARGET_OBJECTS := $(filter-out $(EXCLUDE_FILTER), $(TARGET_OBJECTS)) $(OBJECTS_ARCH) - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/lib/string/string.xml b/reactos/lib/string/string.xml new file mode 100644 index 00000000000..95163f111dd --- /dev/null +++ b/reactos/lib/string/string.xml @@ -0,0 +1,30 @@ + + memccpy.c + memchr.c + memcmp.c + memcpy.c + memmove.c + memset.c + strcat.c + strchr.c + strcmp.c + strcpy.c + strcspn.c + strlen.c + strncat.c + strncmp.c + strncpy.c + strnlen.c + strrchr.c + strspn.c + wcscat.c + wcschr.c + wcscmp.c + wcscpy.c + wcslen.c + wcsncat.c + wcsncmp.c + wcsncpy.c + wcsnlen.c + wcsrchr.c + diff --git a/reactos/lib/strmiids/makefile b/reactos/lib/strmiids/makefile deleted file mode 100644 index 29ba279a5bc..00000000000 --- a/reactos/lib/strmiids/makefile +++ /dev/null @@ -1,26 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_DEFONLY = yes - -TARGET_TYPE = library - -TARGET_NAME = strmiids - -TARGET_CFLAGS = -D__REACTOS__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Werror -Wall - -TARGET_LFLAGS = -Wl - -TARGET_OBJECTS = \ - strmiids.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF \ No newline at end of file diff --git a/reactos/lib/strmiids/strmiids.xml b/reactos/lib/strmiids/strmiids.xml new file mode 100644 index 00000000000..9ce2672f0f0 --- /dev/null +++ b/reactos/lib/strmiids/strmiids.xml @@ -0,0 +1,5 @@ + + + + strmiids.c + diff --git a/reactos/lib/syssetup/Makefile b/reactos/lib/syssetup/Makefile deleted file mode 100644 index eb3bc26a10c..00000000000 --- a/reactos/lib/syssetup/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = syssetup - -TARGET_BASE = $(TARGET_BASE_LIB_SYSSETUP) - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a gdi32.a user32.a samlib.a userenv.a \ - comctl32.a setupapi.a ole32.a shell32.a shlwapi.a - -TARGET_GCCLIBS = uuid - -TARGET_CFLAGS = -Wall -Werror -fno-builtin - -TARGET_CFLAGS += -D__USE_W32API -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DUNICODE -D_UNICODE -TARGET_RCFLAGS += -D__USE_W32API -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DUNICODE -D_UNICODE - -TARGET_LFLAGS = -nostartfiles - -TARGET_OBJECTS = dllmain.o install.o logfile.o wizard.o - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/syssetup/syssetup.xml b/reactos/lib/syssetup/syssetup.xml new file mode 100644 index 00000000000..248340eb659 --- /dev/null +++ b/reactos/lib/syssetup/syssetup.xml @@ -0,0 +1,27 @@ + + + . + + + + 0x0600 + 0x0501 + uuid + ntdll + kernel32 + advapi32 + gdi32 + user32 + samlib + userenv + comctl32 + setupapi + ole32 + shell32 + shlwapi + dllmain.c + install.c + logfile.c + wizard.c + syssetup.rc + diff --git a/reactos/lib/twain/Makefile b/reactos/lib/twain/Makefile deleted file mode 100644 index 1f813bb286a..00000000000 --- a/reactos/lib/twain/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = twain_32 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_BASE=$(TARGET_BASE_LIB_TWAIN_32) - -TARGET_SDKLIBS = ntdll.a wine.a - -TARGET_OBJECTS = \ - capability.o \ - ds_audio.o \ - ds_ctrl.o \ - ds_image.o \ - dsm_ctrl.o \ - twain32_main.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/config.mk diff --git a/reactos/lib/twain/twain_32.xml b/reactos/lib/twain/twain_32.xml new file mode 100644 index 00000000000..99aa9da0632 --- /dev/null +++ b/reactos/lib/twain/twain_32.xml @@ -0,0 +1,15 @@ + + + . + + wine + ntdll + kernel32 + capability.c + ds_audio.c + ds_ctrl.c + ds_image.c + dsm_ctrl.c + twain32_main.c + twain_32.rc + diff --git a/reactos/lib/urlmon/Makefile b/reactos/lib/urlmon/Makefile deleted file mode 100644 index 3fdca915d1c..00000000000 --- a/reactos/lib/urlmon/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 10513 2004-08-13 06:14:48Z rcampbell $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk \ No newline at end of file diff --git a/reactos/lib/urlmon/urlmon.xml b/reactos/lib/urlmon/urlmon.xml new file mode 100644 index 00000000000..5253d0c7ed7 --- /dev/null +++ b/reactos/lib/urlmon/urlmon.xml @@ -0,0 +1,28 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + + wine + uuid + ntdll + kernel32 + advapi32 + user32 + ole32 + shlwapi + cabinet + wininet + regsvr.c + sec_mgr.c + umon.c + urlmon_main.c + urlmon.spec + diff --git a/reactos/lib/user32/Makefile b/reactos/lib/user32/Makefile deleted file mode 100644 index ddc4461383d..00000000000 --- a/reactos/lib/user32/Makefile +++ /dev/null @@ -1,107 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = user32 - -TARGET_PCH = include/user32.h - -TARGET_BASE = $(TARGET_BASE_LIB_USER32) - -TARGET_SDKLIBS = wine.a ntdll.a gdi32.a rosrtl.a kernel32.a advapi32.a - -TARGET_CFLAGS = \ - -I./include \ - -DUNICODE \ - -D__REACTOS__ \ - -D__USE_W32API \ - -DWINVER=0x0600 \ - -D_WIN32_WINNT=0x0501 \ - -Wall \ - -Werror \ - -fno-builtin - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_RCFLAGS = --include-dir ./include - -CONTROLS_OBJECTS = \ - controls/combo.o \ - controls/edit.o \ - controls/icontitle.o \ - controls/listbox.o \ - controls/scrollbar.o \ - controls/static.o \ - controls/button.o \ - controls/regcontrol.o - -MISC_OBJECTS = \ - misc/dde.o \ - misc/ddeclient.o \ - misc/ddeserver.o \ - misc/desktop.o \ - misc/display.o \ - misc/dllmain.o \ - misc/exit.o \ - misc/exticon.o \ - misc/wsprintf.o \ - misc/stubs.o \ - misc/winhelp.o \ - misc/win32k.o \ - misc/winsta.o \ - misc/resources.o \ - misc/object.o \ - misc/timer.o \ - misc/strpool.o \ - misc/misc.o - -WINDOWS_OBJECTS = \ - windows/caret.o \ - windows/class.o \ - windows/message.o \ - windows/window.o \ - windows/defwnd.o \ - windows/accel.o \ - windows/bitmap.o \ - windows/clipboard.o \ - windows/cursor.o \ - windows/dc.o \ - windows/dialog.o \ - windows/draw.o \ - windows/font.o \ - windows/hook.o \ - windows/icon.o \ - windows/input.o \ - windows/mdi.o \ - windows/menu.o \ - windows/messagebox.o \ - windows/nonclient.o \ - windows/paint.o \ - windows/prop.o \ - windows/rect.o \ - windows/text.o \ - windows/winpos.o - -TARGET_OBJECTS = \ - $(MISC_OBJECTS) \ - $(WINDOWS_OBJECTS) \ - $(CONTROLS_OBJECTS) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -DEP_EXCLUDE_FILTER = misc/win32k.% - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -include $(TOOLS_PATH)/config.mk - -# EOF diff --git a/reactos/lib/user32/user32.xml b/reactos/lib/user32/user32.xml new file mode 100644 index 00000000000..71badf41c07 --- /dev/null +++ b/reactos/lib/user32/user32.xml @@ -0,0 +1,81 @@ + + + . + include + + + + + 0x0600 + 0x0501 + wine + ntdll + gdi32 + rosrtl + kernel32 + advapi32 + + user32.h + + + button.c + combo.c + edit.c + icontitle.c + listbox.c + regcontrol.c + scrollbar.c + static.c + + + dde.c + ddeclient.c + ddeserver.c + desktop.c + display.c + dllmain.c + exit.c + exticon.c + misc.c + object.c + resources.c + strpool.c + stubs.c + timer.c + win32k.S + winhelp.c + winsta.c + wsprintf.c + + + accel.c + bitmap.c + caret.c + class.c + clipboard.c + cursor.c + dc.c + defwnd.c + dialog.c + draw.c + font.c + hook.c + icon.c + input.c + mdi.c + menu.c + message.c + messagebox.c + nonclient.c + paint.c + prop.c + rect.c + text.c + window.c + winpos.c + + -lgcc + -nostartfiles + -nostdlib + user32.rc + diff --git a/reactos/lib/userenv/desktop.c b/reactos/lib/userenv/desktop.c index 6634786ba31..492e66f8072 100644 --- a/reactos/lib/userenv/desktop.c +++ b/reactos/lib/userenv/desktop.c @@ -232,7 +232,7 @@ AddDesktopItemW (BOOL bCommonDesktop, WCHAR szLinkPath[MAX_PATH]; WCHAR szArguments[MAX_PATH]; WCHAR szCommand[MAX_PATH]; - WIN32_FIND_DATA FindData; + WIN32_FIND_DATAW FindData; HANDLE hFind; LPWSTR Ptr; DWORD dwLength; @@ -416,7 +416,7 @@ DeleteDesktopItemW (BOOL bCommonItem, wcscat (szLinkPath, L".lnk"); DPRINT ("Link path: '%S'\n", szLinkPath); - return DeleteFile (szLinkPath); + return DeleteFileW (szLinkPath); } @@ -657,7 +657,7 @@ AddItemW (LPCWSTR lpGroupName, /* Optional */ WCHAR szLinkPath[MAX_PATH]; WCHAR szArguments[MAX_PATH]; WCHAR szCommand[MAX_PATH]; - WIN32_FIND_DATA FindData; + WIN32_FIND_DATAW FindData; HANDLE hFind; LPWSTR Ptr; DWORD dwLength; diff --git a/reactos/lib/userenv/makefile b/reactos/lib/userenv/makefile deleted file mode 100644 index aecd6a5f9fd..00000000000 --- a/reactos/lib/userenv/makefile +++ /dev/null @@ -1,31 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = userenv - -TARGET_PCH = precomp.h - -TARGET_BASE = $(TARGET_BASE_LIB_USERENV) - -TARGET_CFLAGS = -fno-builtin -D__USE_W32API -D_WIN32_IE=0x0400 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -DUNICODE -D_UNICODE -Wall -Werror - -TARGET_LFLAGS = -nostdlib -nostartfiles - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a user32.a wine_uuid.a - -TARGET_OBJECTS = desktop.o directory.o environment.o profile.o misc.o \ - registry.o setup.o userenv.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/userenv/registry.c b/reactos/lib/userenv/registry.c index 07a873dd096..482827daa31 100644 --- a/reactos/lib/userenv/registry.c +++ b/reactos/lib/userenv/registry.c @@ -206,7 +206,7 @@ CopyKey (HKEY hDstKey, return FALSE; } - if (RegSetValueEx (hDstKey, + if (RegSetValueExW (hDstKey, lpNameBuffer, 0, dwType, diff --git a/reactos/lib/userenv/setup.c b/reactos/lib/userenv/setup.c index 9d0a66a5dcf..93bf4699ece 100644 --- a/reactos/lib/userenv/setup.c +++ b/reactos/lib/userenv/setup.c @@ -110,7 +110,7 @@ InitializeProfiles (VOID) HKEY hKey; /* Load profiles directory path */ - if (!LoadString(hInstance, + if (!LoadStringW(hInstance, IDS_PROFILEPATH, szBuffer, MAX_PATH)) @@ -289,7 +289,7 @@ InitializeProfiles (VOID) } /* Set 'Fonts' folder path */ - GetWindowsDirectory(szBuffer, MAX_PATH); + GetWindowsDirectoryW(szBuffer, MAX_PATH); wcscat(szBuffer, L"\\media\\fonts"); dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR); @@ -541,7 +541,7 @@ InitializeProfiles (VOID) RegCloseKey(hKey); /* Load 'Program Files' location */ - if (!LoadString(hInstance, + if (!LoadStringW(hInstance, IDS_PROGRAMFILES, szBuffer, MAX_PATH)) diff --git a/reactos/lib/userenv/userenv.xml b/reactos/lib/userenv/userenv.xml new file mode 100644 index 00000000000..5f8eaefd9e2 --- /dev/null +++ b/reactos/lib/userenv/userenv.xml @@ -0,0 +1,22 @@ + + + . + + 0x0400 + 0x0501 + uuid + ntdll + kernel32 + advapi32 + user32 + precomp.h + desktop.c + directory.c + environment.c + misc.c + profile.c + registry.c + setup.c + userenv.c + userenv.rc + diff --git a/reactos/lib/uuid/Makefile b/reactos/lib/uuid/Makefile deleted file mode 100644 index 735e0c5f881..00000000000 --- a/reactos/lib/uuid/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = wine_uuid - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -I$(PATH_TO_TOP)/include/wine - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_OBJECTS = uuid.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -DEP_OBJECTS := $(TARGET_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/tools/depend.mk diff --git a/reactos/lib/uuid/uuid.c b/reactos/lib/uuid/uuid.c index 1e1d312a436..264094a7eba 100644 --- a/reactos/lib/uuid/uuid.c +++ b/reactos/lib/uuid/uuid.c @@ -88,3 +88,7 @@ DEFINE_OLEGUID(IID_StdOle,0x00020430,0,0); DEFINE_GUID(CLSID_StdFont,0x0be35203,0x8f91,0x11ce,0x9d,0xe3,0x00,0xaa,0x00,0x4b,0xb8,0x51); DEFINE_GUID(CLSID_StdPicture,0x0be35204,0x8f91,0x11ce,0x9d,0xe3,0x00,0xaa,0x00,0x4b,0xb8,0x51); + +DEFINE_GUID(IID_IWebBrowser2,0xd30c1661,0xcdaf,0x11d0,0x8a,0x3e,0x0,0xc0,0x4f,0xc9,0xe2,0x6e); +DEFINE_GUID(DIID_DWebBrowserEvents2,0x34a715a0,0x6587,0x11d0,0x92,0x4a,0x0,0x20,0xaf,0xc7,0xac,0x4d); + diff --git a/reactos/lib/uuid/uuid.xml b/reactos/lib/uuid/uuid.xml new file mode 100644 index 00000000000..595f0b4ba97 --- /dev/null +++ b/reactos/lib/uuid/uuid.xml @@ -0,0 +1,6 @@ + + include/wine + + + uuid.c + diff --git a/reactos/lib/version/makefile b/reactos/lib/version/makefile deleted file mode 100644 index d450001af49..00000000000 --- a/reactos/lib/version/makefile +++ /dev/null @@ -1,43 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = version - -TARGET_BASE = $(TARGET_BASE_LIB_VERSION) - -TARGET_CFLAGS = -fno-builtin -Wall - -# require os code to explicitly request A/W version of structs/functions -DEFINES = \ - -D_DISABLE_TIDENTS \ - -D__USE_W32API \ - -D__REACTOS__ \ - -D_WIN32_IE=0x600 \ - -D_WIN32_WINNT=0x501 \ - -DWINVER=0x501 - -TARGET_CFLAGS += \ - $(DEFINES) \ - -I$(PATH_TO_TOP)/include/wine - -TARGET_RCFLAGS += -D__REACTOS__ -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 - -TARGET_LFLAGS = -nostdlib -nostartfiles - -TARGET_SDKLIBS = wine.a kernel32.a ntdll.a - -TARGET_OBJECTS = \ - misc/libmain.o \ - misc/stubs.o \ - info.o \ - install.o \ - resource.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/lib/version/version.xml b/reactos/lib/version/version.xml new file mode 100644 index 00000000000..886a7271960 --- /dev/null +++ b/reactos/lib/version/version.xml @@ -0,0 +1,21 @@ + + + include/wine + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + + libmain.c + stubs.c + + info.c + install.c + resource.c + version.rc + diff --git a/reactos/lib/wininet/makefile b/reactos/lib/wininet/makefile deleted file mode 100644 index b48614a5ce0..00000000000 --- a/reactos/lib/wininet/makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: makefile 7409 2004-01-02 19:49:47Z gvg $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/wininet/wininet.xml b/reactos/lib/wininet/wininet.xml new file mode 100644 index 00000000000..cf0a497b46c --- /dev/null +++ b/reactos/lib/wininet/wininet.xml @@ -0,0 +1,34 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + user32 + advapi32 + shell32 + shlwapi + mpr + ws2_32 + cookie.c + dialogs.c + ftp.c + gopher.c + http.c + internet.c + netconnection.c + urlcache.c + utility.c + wininet_main.c + rsrc.rc + version.rc + wininet.spec + diff --git a/reactos/lib/winmm/Makefile b/reactos/lib/winmm/Makefile deleted file mode 100644 index 5529fb2176c..00000000000 --- a/reactos/lib/winmm/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# $Id: Makefile 8376 2004-02-25 20:00:42Z sedwards $ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = winedll - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/lib/winmm/winmm.xml b/reactos/lib/winmm/winmm.xml new file mode 100644 index 00000000000..cbff235edb3 --- /dev/null +++ b/reactos/lib/winmm/winmm.xml @@ -0,0 +1,27 @@ + + + . + include/wine + + + + + 0x600 + 0x501 + 0x501 + wine + ntdll + kernel32 + advapi32 + user32 + driver.c + joystick.c + lolvldrv.c + mci.c + mmio.c + playsound.c + time.c + winmm.c + winmm_res.rc + winmm.spec + diff --git a/reactos/lib/winspool/Makefile b/reactos/lib/winspool/Makefile deleted file mode 100644 index feca988d18e..00000000000 --- a/reactos/lib/winspool/Makefile +++ /dev/null @@ -1,44 +0,0 @@ -# -# Fix this -# - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = winspool - -TARGET_EXTENSION = .drv - -TARGET_BASE = $(TARGET_BASE_LIB_WINSPOOL) - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -D__REACTOS__ \ - -D__USE_W32API \ - -DUNICODE \ - -DLE - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = wine.a ntdll.a kernel32.a - -TARGET_OBJECTS = info.o stubs.o - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/lib/winspool/winspool.xml b/reactos/lib/winspool/winspool.xml new file mode 100644 index 00000000000..f8bb483eef1 --- /dev/null +++ b/reactos/lib/winspool/winspool.xml @@ -0,0 +1,13 @@ + + + . + + + + + ntdll + kernel32 + info.c + stubs.c + winspool.rc + diff --git a/reactos/lib/ws2_32/makefile b/reactos/lib/ws2_32/makefile deleted file mode 100644 index c7fcf8793fa..00000000000 --- a/reactos/lib/ws2_32/makefile +++ /dev/null @@ -1,44 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_REGTESTS = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = ws2_32 - -TARGET_PCH = include/ws2_32.h - -TARGET_BASE = $(TARGET_BASE_LIB_W2_32) - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -DUNICODE \ - -DLE \ - -D__USE_W32API \ - -D_WIN32_WINNT=0x0500 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a advapi32.a dnsapi.a - -TARGET_OBJECTS = misc/bsd.o misc/catalog.o misc/dllmain.o \ - misc/event.o misc/handle.o misc/ns.o \ - misc/sndrcv.o misc/stubs.o misc/upcall.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/ws2_32/ws2_32.xml b/reactos/lib/ws2_32/ws2_32.xml new file mode 100644 index 00000000000..6675e265ef7 --- /dev/null +++ b/reactos/lib/ws2_32/ws2_32.xml @@ -0,0 +1,29 @@ + + + include + + + + + 0x0500 + ntdll + kernel32 + user32 + advapi32 + dnsapi + + ws2_32.h + + + bsd.c + catalog.c + dllmain.c + event.c + handle.c + ns.c + sndrcv.c + stubs.c + upcall.c + + ws2_32.rc + diff --git a/reactos/lib/ws2help/makefile b/reactos/lib/ws2help/makefile deleted file mode 100644 index ff141fc3c65..00000000000 --- a/reactos/lib/ws2help/makefile +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: makefile - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = ws2help - -TARGET_BASE = $(TARGET_BASE_LIB_WS2HELP) - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -DUNICODE \ - -D__USE_W32API - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a ws2_32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/ws2help/ws2help.xml b/reactos/lib/ws2help/ws2help.xml new file mode 100644 index 00000000000..60f838d7697 --- /dev/null +++ b/reactos/lib/ws2help/ws2help.xml @@ -0,0 +1,12 @@ + + + . + + + + ntdll + kernel32 + ws2_32 + ws2help.c + ws2help.rc + diff --git a/reactos/lib/wshirda/makefile b/reactos/lib/wshirda/makefile deleted file mode 100644 index 9ed5a074e09..00000000000 --- a/reactos/lib/wshirda/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: makefile - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = wshirda - -TARGET_BASE = $(TARGET_BASE_LIB_WSHIRDA) - -TARGET_CFLAGS = -DUNICODE -D__USE_W32API -Werror -Wall - -TARGET_SDKLIBS = ntdll.a kernel32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/lib/wshirda/wshirda.xml b/reactos/lib/wshirda/wshirda.xml new file mode 100644 index 00000000000..412cad00ca6 --- /dev/null +++ b/reactos/lib/wshirda/wshirda.xml @@ -0,0 +1,12 @@ + + + . + + + + ntdll + kernel32 + ws2_32 + wshirda.c + wshirda.rc + diff --git a/reactos/lib/wsock32/Makefile b/reactos/lib/wsock32/Makefile deleted file mode 100644 index 352058269c9..00000000000 --- a/reactos/lib/wsock32/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = wsock32 - -TARGET_BASE = $(TARGET_BASE_LIB_WSOCK32) - -TARGET_CFLAGS = \ - -I./include \ - -Wall \ - -Werror \ - -fno-builtin \ - -DUNICODE \ - -DLE \ - -DDBG \ - -D__USE_W32API - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = kernel32.a ws2_32.a mswsock.a - -TARGET_OBJECTS = stubs.o - -TARGET_CLEAN = $(DEP_FILES) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/lib/wsock32/wsock32.xml b/reactos/lib/wsock32/wsock32.xml new file mode 100644 index 00000000000..1ed4c85fb17 --- /dev/null +++ b/reactos/lib/wsock32/wsock32.xml @@ -0,0 +1,11 @@ + + + . + + + ntdll + kernel32 + ws2_32 + stubs.c + wsock32.rc + diff --git a/reactos/lib/zlib/Makefile b/reactos/lib/zlib/Makefile deleted file mode 100644 index bbe57e3ac3b..00000000000 --- a/reactos/lib/zlib/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = library - -TARGET_NAME = zlib - -TARGET_CFLAGS = \ - -O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ - -Wstrict-prototypes -Wmissing-prototypes -Werror - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -TARGET_OBJECTS = \ - adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o zutil.o \ - inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/lib/zlib/zlib.mak b/reactos/lib/zlib/zlib.mak new file mode 100755 index 00000000000..1bd5258b68f --- /dev/null +++ b/reactos/lib/zlib/zlib.mak @@ -0,0 +1,106 @@ +ZLIB_BASE = $(LIB_BASE_)zlib +ZLIB_BASE_ = $(ZLIB_BASE)$(SEP) +ZLIB_INT = $(INTERMEDIATE_)$(ZLIB_BASE) +ZLIB_INT_ = $(INTERMEDIATE_)$(ZLIB_BASE)$(SEP) +ZLIB_OUT = $(OUTPUT_)$(ZLIB_BASE) +ZLIB_OUT_ = $(OUTPUT_)$(ZLIB_BASE)$(SEP) + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(ZLIB_OUT): | $(OUTPUT_)$(LIB_BASE) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +ZLIB_HOST_TARGET = \ + $(ZLIB_OUT)$(SEP)zlib.host.a + +ZLIB_HOST_SOURCES = $(addprefix $(ZLIB_BASE_), \ + adler32.c \ + compress.c \ + crc32.c \ + gzio.c \ + uncompr.c \ + deflate.c \ + trees.c \ + zutil.c \ + inflate.c \ + infblock.c \ + inftrees.c \ + infcodes.c \ + infutil.c \ + inffast.c \ + ) + +ZLIB_HOST_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(ZLIB_HOST_SOURCES:.c=.host.o)) + +ZLIB_HOST_CFLAGS = -MMD -O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ + -Wstrict-prototypes -Wmissing-prototypes + +$(ZLIB_HOST_TARGET): $(ZLIB_HOST_OBJECTS) | $(ZLIB_OUT) + $(ECHO_AR) + $(host_ar) -r $@ $(ZLIB_HOST_OBJECTS) + +$(ZLIB_INT_)adler32.host.o: $(ZLIB_BASE_)adler32.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)compress.host.o: $(ZLIB_BASE_)compress.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)crc32.host.o: $(ZLIB_BASE_)crc32.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)gzio.host.o: $(ZLIB_BASE_)gzio.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)uncompr.host.o: $(ZLIB_BASE_)uncompr.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)deflate.host.o: $(ZLIB_BASE_)deflate.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)trees.host.o: $(ZLIB_BASE_)trees.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)zutil.host.o: $(ZLIB_BASE_)zutil.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)inflate.host.o: $(ZLIB_BASE_)inflate.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)infblock.host.o: $(ZLIB_BASE_)infblock.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)inftrees.host.o: $(ZLIB_BASE_)inftrees.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)infcodes.host.o: $(ZLIB_BASE_)infcodes.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)infutil.host.o: $(ZLIB_BASE_)infutil.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +$(ZLIB_INT_)inffast.host.o: $(ZLIB_BASE_)inffast.c | $(ZLIB_INT) + $(ECHO_CC) + ${host_gcc} $(ZLIB_HOST_CFLAGS) -c $< -o $@ + +.PHONY: zlib_host +zlib_host: $(ZLIB_HOST_TARGET) + +.PHONY: zlib_host_clean +zlib_host_clean: + -@$(rm) $(ZLIB_HOST_TARGET) $(ZLIB_HOST_OBJECTS) 2>$(NUL) +clean: zlib_clean diff --git a/reactos/lib/zlib/zlib.xml b/reactos/lib/zlib/zlib.xml new file mode 100644 index 00000000000..61acd9ea6d3 --- /dev/null +++ b/reactos/lib/zlib/zlib.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/lib/zlib/zlib_common.xml b/reactos/lib/zlib/zlib_common.xml new file mode 100644 index 00000000000..1a12879f77e --- /dev/null +++ b/reactos/lib/zlib/zlib_common.xml @@ -0,0 +1,16 @@ +. + +adler32.c +compress.c +crc32.c +gzio.c +uncompr.c +deflate.c +trees.c +zutil.c +inflate.c +infblock.c +inftrees.c +infcodes.c +infutil.c +inffast.c diff --git a/reactos/media/directory.xml b/reactos/media/directory.xml new file mode 100644 index 00000000000..41c6d89e8a3 --- /dev/null +++ b/reactos/media/directory.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/reactos/media/drivers/directory.xml b/reactos/media/drivers/directory.xml new file mode 100644 index 00000000000..5104ac3e01a --- /dev/null +++ b/reactos/media/drivers/directory.xml @@ -0,0 +1,3 @@ + + + diff --git a/reactos/media/drivers/etc/etc.xml b/reactos/media/drivers/etc/etc.xml new file mode 100644 index 00000000000..23872aae472 --- /dev/null +++ b/reactos/media/drivers/etc/etc.xml @@ -0,0 +1,2 @@ +services +services diff --git a/reactos/media/fonts/fonts.xml b/reactos/media/fonts/fonts.xml new file mode 100644 index 00000000000..fae43b4ee65 --- /dev/null +++ b/reactos/media/fonts/fonts.xml @@ -0,0 +1,28 @@ +c0419bt_.ttf +c0582bt_.ttf +c0583bt_.ttf +c0611bt_.ttf +c0632bt_.ttf +c0633bt_.ttf +c0648bt_.ttf +c0649bt_.ttf +cour.ttf +courb.ttf +courbi.ttf +helb____.ttf +TGMarlett.ttf +timr____.ttf +UTB_____.ttf +UTBI____.ttf +UTI_____.ttf +UTRG____.ttf +Vera.ttf +VeraBd.ttf +VeraBI.ttf +VeraIt.ttf +VeraMoBd.ttf +VeraMoBI.ttf +VeraMoIt.ttf +VeraMono.ttf +VeraSe.ttf +VeraSeBd.ttf diff --git a/reactos/media/inf/inf.xml b/reactos/media/inf/inf.xml new file mode 100644 index 00000000000..da0cd003158 --- /dev/null +++ b/reactos/media/inf/inf.xml @@ -0,0 +1,4 @@ +layout.inf +NET_NIC.inf +scsi.inf +syssetup.inf diff --git a/reactos/media/nls/nls.xml b/reactos/media/nls/nls.xml new file mode 100644 index 00000000000..d3fff477eb1 --- /dev/null +++ b/reactos/media/nls/nls.xml @@ -0,0 +1,58 @@ +c_437.nls +c_1252.nls +l_intl.nls + +c_037.nls +c_424.nls +c_437.nls +c_500.nls +c_737.nls +c_775.nls +c_850.nls +c_852.nls +c_855.nls +c_856.nls +c_857.nls +c_860.nls +c_861.nls +c_862.nls +c_863.nls +c_864.nls +c_865.nls +c_866.nls +c_869.nls +c_874.nls +c_875.nls +c_878.nls +c_932.nls +c_936.nls +c_949.nls +c_950.nls +c_1006.nls +c_1026.nls +c_1250.nls +c_1251.nls +c_1252.nls +c_1253.nls +c_1254.nls +c_1255.nls +c_1256.nls +c_1257.nls +c_1258.nls +c_10000.nls +c_10006.nls +c_10007.nls +c_10029.nls +c_10079.nls +c_10081.nls +c_20866.nls +c_28591.nls +c_28592.nls +c_28593.nls +c_28594.nls +c_28595.nls +c_28596.nls +c_28597.nls +c_28598.nls +c_28599.nls +l_intl.nls diff --git a/reactos/ntoskrnl/Makefile b/reactos/ntoskrnl/Makefile deleted file mode 100644 index d61bfedd29a..00000000000 --- a/reactos/ntoskrnl/Makefile +++ /dev/null @@ -1,459 +0,0 @@ -preall: all - -PATH_TO_TOP := .. - -include $(PATH_TO_TOP)/config - -TARGET_REGTESTS = yes - -TARGET_TYPE = kernel - -TARGET_NAME = ntoskrnl - -TARGET_BOOTSTRAP = yes - -CONFIG := - -ifeq ($(DBG), 1) -DBG_OR_KDBG := 1 -endif -ifeq ($(KDBG), 1) -DBG_OR_KDBG := 1 -endif - -LINKER_SCRIPT := ntoskrnl.lnk -STRIP_FLAGS := -Wl,-s - -TARGET_ASFLAGS = -I./include -TARGET_CFLAGS = -I./include $(CFLAGS_KDBG) -Wall -Werror $(CFLAGS_OPT) - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS - -# 3GB User Mode Memory Space support -ifeq ($(3GB), 1) -TARGET_CFLAGS += -D__3GB__ -TARGET_BASE = 0xC0000000 -else -TARGET_BASE = 0x80000000 -endif - -ifneq ($(DBG), 0) -TARGET_CFLAGS += -DDBG -endif - -# enable thread event pair features (NT4 only!) -# TARGET_CFLAGS += -D_ENABLE_THRDEVTPAIR - -# -# Javascript extension for kdb -# - -OBJECTS_PATH = objects - -# -# Architecture specific Makefile -# Defines $(OBJECTS_ARCH) -# -include Makefile.$(ARCH) - -# Run-Time Library (Rtl) -OBJECTS_RTL = \ - rtl/atom.o \ - rtl/capture.o \ - rtl/ctype.o \ - rtl/debug.o \ - rtl/handle.o \ - rtl/message.o \ - rtl/misc.o \ - rtl/purecall.o \ - rtl/regio.o \ - rtl/sprintf.o \ - rtl/stdlib.o \ - rtl/string.o \ - rtl/swprintf.o \ - rtl/wstring.o \ - rtl/nls.o \ - rtl/rangelist.o \ - rtl/libsupp.o - -OBJECTS_RTL := $(filter-out $(RTL_EXCLUDE_FILTER), $(OBJECTS_RTL)) - - -# Kernel (Ke) -OBJECTS_KE = \ - ke/apc.o \ - ke/bug.o \ - ke/catch.o \ - ke/clock.o \ - ke/dpc.o \ - ke/device.o \ - ke/event.o \ - ke/gate.o \ - ke/gmutex.o \ - ke/kqueue.o \ - ke/kthread.o \ - ke/ipi.o \ - ke/main.o \ - ke/mutex.o \ - ke/process.o \ - ke/profile.o \ - ke/queue.o \ - ke/sem.o \ - ke/spinlock.o \ - ke/timer.o \ - ke/usercall.o \ - ke/wait.o - -# Memory Manager (Mm) -OBJECTS_MM = \ - mm/anonmem.o \ - mm/aspace.o \ - mm/balance.o \ - mm/cont.o \ - mm/drvlck.o \ - mm/elf32.o \ - mm/elf64.o \ - mm/freelist.o \ - mm/iospace.o \ - mm/kmap.o \ - mm/marea.o \ - mm/mdl.o \ - mm/mm.o \ - mm/mminit.o \ - mm/mpw.o \ - mm/ncache.o \ - mm/npool.o \ - mm/pagfault.o \ - mm/pagefile.o \ - mm/pageop.o \ - mm/pager.o \ - mm/paging.o \ - mm/pe.o \ - mm/pool.o \ - mm/ppool.o \ - mm/physical.o \ - mm/process.o \ - mm/region.o \ - mm/rmap.o \ - mm/section.o \ - mm/verifier.o \ - mm/virtual.o \ - mm/wset.o - -# I/O Subsystem (Io) -OBJECTS_IO = \ - io/adapter.o \ - io/arcname.o \ - io/bootlog.o \ - io/controller.o \ - io/device.o \ - io/deviface.o \ - io/disk.o \ - io/driver.o \ - io/efi.o \ - io/error.o \ - io/event.o \ - io/file.o \ - io/fs.o \ - io/iocomp.o \ - io/iomgr.o \ - io/iowork.o \ - io/irp.o \ - io/irq.o \ - io/mdl.o \ - io/plugplay.o \ - io/pnpdma.o \ - io/pnpmgr.o \ - io/pnpnotify.o \ - io/pnpreport.o \ - io/pnproot.o \ - io/rawfs.o \ - io/remlock.o \ - io/resource.o \ - io/share.o \ - io/symlink.o \ - io/timer.o \ - io/vpb.o \ - io/wmi.o \ - -# Object Manager (Ob) -OBJECTS_OB = \ - ob/dirobj.o \ - ob/handle.o \ - ob/namespc.o \ - ob/ntobj.o \ - ob/object.o \ - ob/sdcache.o \ - ob/security.o \ - ob/symlink.o \ - ob/wait.o - -# Process Manager (Ps) -OBJECTS_PS = \ - ps/cid.o \ - ps/debug.o \ - ps/idle.o \ - ps/job.o \ - ps/kill.o \ - ps/locale.o \ - ps/process.o \ - ps/psmgr.o \ - ps/notify.o \ - ps/quota.o \ - ps/query.o \ - ps/security.o \ - ps/suspend.o \ - ps/thread.o \ - ps/win32.o - -# Executive Subsystem (Ex) -OBJECTS_EX = \ - ex/callback.o \ - ex/dbgctrl.o \ - ex/error.o \ - ex/event.o \ - ex/evtpair.o \ - ex/fmutex.o \ - ex/handle.o \ - ex/init.o \ - ex/interlck.o \ - ex/list.o \ - ex/lookas.o \ - ex/mutant.o \ - ex/power.o \ - ex/profile.o \ - ex/resource.o \ - ex/rundown.o \ - ex/sem.o \ - ex/synch.o \ - ex/sysinfo.o \ - ex/time.o \ - ex/timer.o \ - ex/util.o \ - ex/uuid.o \ - ex/win32k.o \ - ex/work.o \ - ex/zone.o \ - ex/zw.o - -# Installable File System Run-Time Library (FsRtl) -OBJECTS_FS = \ - fs/context.o \ - fs/fastio.o \ - fs/filelock.o \ - fs/mcb.o \ - fs/name.o \ - fs/notify.o \ - fs/oplock.o \ - fs/pool.o \ - fs/tunnel.o \ - fs/unc.o \ - fs/util.o - -# Security Subsystem -OBJECTS_SE = \ - se/access.o \ - se/acl.o \ - se/audit.o \ - se/lsa.o \ - se/luid.o \ - se/priv.o \ - se/sd.o \ - se/semgr.o \ - se/sid.o \ - se/token.o - -# Configuration Manager (Registry) -OBJECTS_CM = \ - cm/import.o \ - cm/ntfunc.o \ - cm/regfile.o \ - cm/registry.o \ - cm/regobj.o \ - -# Loader -OBJECTS_LDR = \ - ldr/init.o \ - ldr/loader.o \ - ldr/resource.o \ - ldr/rtl.o \ - ldr/sysdll.o \ - ldr/userldr.o - -# Local Procedure Call (Lpc) -OBJECTS_LPC = \ - lpc/close.o \ - lpc/complete.o \ - lpc/connect.o \ - lpc/create.o \ - lpc/listen.o \ - lpc/port.o \ - lpc/query.o \ - lpc/queue.o \ - lpc/receive.o \ - lpc/reply.o \ - lpc/send.o - -# Power Management (Po) -OBJECTS_PO = \ - po/power.o - -# Cache Manager (Cc) -OBJECTS_CC = \ - cc/cacheman.o \ - cc/copy.o \ - cc/fs.o \ - cc/pin.o \ - cc/mdl.o \ - cc/view.o - -# Kernel Debugger Support (Kd) -OBJECTS_KD = \ - kd/kdinit.o \ - kd/kdmain.o \ - kd/kdio.o \ - -ifeq ($(DBG), 1) -OBJECTS_KD := \ - $(OBJECTS_KD) \ - kd/wrappers/gdbstub.o \ - kd/wrappers/bochs.o -endif - -# User-Mode Debugging (Dbgk) -OBJECTS_DBGK = \ - dbgk/dbgkutil.o \ - dbgk/debug.o - -ifeq ($(KDBG), 1) -OBJECTS_KDBG := \ - kdbg/kdb.o \ - kdbg/kdb_cli.o \ - kdbg/kdb_expr.o \ - kdbg/kdb_keyboard.o \ - kdbg/kdb_serial.o \ - kdbg/kdb_string.o -preall: all -else -OBJECTS_KDBG := -endif -ifeq ($(DBG_OR_KDBG), 1) -OBJECTS_KDBG := \ - $(OBJECTS_KDBG) \ - kdbg/kdb_symbols.o -endif - -# Boot video (Inbv) -OBJECTS_INBV = \ - inbv/inbv.o - -DEP_OBJECTS := $(OBJECTS_MM) $(OBJECTS_ARCH) \ - $(OBJECTS_IO) $(OBJECTS_KE) $(OBJECTS_OB) \ - $(OBJECTS_PS) $(OBJECTS_EX) $(OBJECTS_CC) $(OBJECTS_FS) $(OBJECTS_SE) \ - $(OBJECTS_KDBG) $(OBJECTS_DBGK) $(OBJECTS_CM) $(OBJECTS_LDR) $(OBJECTS_LPC) \ - $(OBJECTS_PO) $(OBJECTS_KD) $(OBJECTS_RTL) $(OBJECTS_INBV) - -TAG_OBJECTS := $(join $(dir $(DEP_OBJECTS)),$(patsubst %.o, .%.TAG, $(notdir $(DEP_OBJECTS)))) - -TARGET_PCH = include/ntoskrnl.h - - -# Resources -OBJECTS_RESOURCE = \ - $(TARGET_NAME).coff - -$(OBJECTS_PATH): - mkdir $(OBJECTS_PATH) - -$(OBJECTS_RESOURCE): $(TARGET_NAME).rc bugcodes.rc $(PATH_TO_TOP)/include/reactos/resource.h - -# Note: arch.o MUST be the first file!!! -OBJECTS := \ - $(OBJECTS_ARCH) \ - $(OBJECTS_KE) \ - $(OBJECTS_CC) \ - $(OBJECTS_CM) \ - $(OBJECTS_EX) \ - $(OBJECTS_LPC) \ - $(OBJECTS_FS) \ - $(OBJECTS_IO) \ - $(OBJECTS_KD) \ - $(OBJECTS_DBGK) \ - $(OBJECTS_LDR) \ - $(OBJECTS_MM) \ - $(OBJECTS_OB) \ - $(OBJECTS_PO) \ - $(OBJECTS_PS) \ - $(OBJECTS_RTL) \ - $(OBJECTS_SE) \ - $(OBJECTS_KDBG) \ - $(OBJECTS_INBV) \ - $(OBJECTS_RESOURCE) - -EXTRA_OBJECTS = $(PATH_TO_TOP)/include/reactos/bugcodes.h - -TARGET_OBJECTS = $(EXTRA_OBJECTS) $(OBJECTS) - -TARGET_LIBS = \ - $(DDK_PATH_LIB)/libhal.a \ - $(SDK_PATH_LIB)/librtl.a \ - $(SDK_PATH_LIB)/librossym.a \ - $(SDK_PATH_LIB)/libstring.a \ - $(SDK_PATH_LIB)/librosrtl.a \ - $(SDK_PATH_LIB)/libpseh.a \ - $(SDK_PATH_LIB)/libwdmguid.a \ - $(PATH_TO_TOP)/drivers/lib/csq/csq.o - -TARGET_LFLAGS = \ - -Wl,-T,ntoskrnl.lnk \ - -Wl,--subsystem,native \ - -Wl,--image-base,$(TARGET_BASE) \ - -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 \ - -Wl,--entry,_NtProcessStartup \ - -nostdlib - -TARGET_GCCLIBS = gcc - -TAGS: $(TAG_OBJECTS) - etags $(addprefix -i , $(TAG_OBJECTS)) - -GENERATED_HEADER_FILES := $(PATH_TO_TOP)/include/reactos/bugcodes.h - -$(PATH_TO_TOP)/include/reactos/bugcodes.h bugcodes.rc: ntoskrnl.mc - $(MC) \ - -H $(PATH_TO_TOP)/include/reactos/bugcodes.h \ - -o bugcodes.rc \ - $(TARGET_NAME).mc - -TARGET_CLEAN = \ - $(PATH_TO_TOP)/include/reactos/bugcodes.h \ - $(DEP_OBJECTS) $(DEP_FILES) MSG00409.bin bugcodes.rc - - -ke/main.o: ke/main.c $(PATH_TO_TOP)/include/reactos/buildno.h - -$(TARGET_PCH): $(PATH_TO_TOP)/include/reactos/bugcodes.h - - -.%.TAG: %.S - etags -o $@ $< - -.%.TAG: %.s - etags -o $@ $< - -.%.TAG: %.c - etags -o $@ $^ - - -docu: - doxygen Doxyfile - -.PHONY: docu - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/ntoskrnl/Makefile.i386 b/reactos/ntoskrnl/Makefile.i386 deleted file mode 100644 index f6ece81010a..00000000000 --- a/reactos/ntoskrnl/Makefile.i386 +++ /dev/null @@ -1,63 +0,0 @@ -# -# Hardware Abstraction Layer (Hal) for x86 systems -# - -# Defines $(OBJECTS_HAL) -# include hal/x86/sources - -OBJECTS_BOOT := ke/i386/main.o - -OBJECTS_EX_I386 := \ - ex/i386/interlck.o - -OBJECTS_KE_I386 := \ - ke/i386/exp.o \ - ke/i386/irq.o \ - ke/i386/irqhand.o \ - ke/i386/thread.o \ - ke/i386/usercall.o \ - ke/i386/trap.o \ - ke/i386/syscall.o \ - ke/i386/ctxswitch.o \ - ke/i386/v86m.o \ - ke/i386/v86m_sup.o \ - ke/i386/vdm.o \ - ke/i386/bios.o \ - ke/i386/gdt.o \ - ke/i386/idt.o \ - ke/i386/ldt.o \ - ke/i386/brkpoint.o \ - ke/i386/kernel.o \ - ke/i386/fpu.o \ - ke/i386/tlbflush.o \ - ke/i386/tss.o \ - ke/i386/usertrap.o \ - ke/i386/stkswitch.o - -OBJECTS_MM_I386 := \ - mm/i386/memsafe.o \ - mm/i386/page.o \ - mm/i386/pfault.o - -OBJECTS_RTL_I386 := \ - rtl/i386/exception.o \ - rtl/i386/seh.o - -ifeq ($(KDBG), 1) -OBJECTS_KDBG_I386 := \ - kdbg/i386/kdb_help.o \ - kdbg/i386/i386-dis.o \ - kdbg/i386/longjmp.o \ - kdbg/i386/setjmp.o -preall: all -else -OBJECTS_KDBG_I386 := -endif - -OBJECTS_PS_I386 := \ - ps/i386/continue.o - -RTL_EXCLUDE_FILTER := - -OBJECTS_ARCH = $(OBJECTS_BOOT) $(OBJECTS_EX_I386) $(OBJECTS_KE_I386) $(OBJECTS_MM_I386) \ - $(OBJECTS_RTL_I386) $(OBJECTS_KDBG_I386) $(OBJECTS_PS_I386) diff --git a/reactos/ntoskrnl/kd/wrappers/gdbstub.c b/reactos/ntoskrnl/kd/wrappers/gdbstub.c index 49e5d20c3d5..5574b2336c6 100644 --- a/reactos/ntoskrnl/kd/wrappers/gdbstub.c +++ b/reactos/ntoskrnl/kd/wrappers/gdbstub.c @@ -177,55 +177,6 @@ static PCHAR GspThreadStates[DeferredReady+1] = "DeferredReady" }; -char * -strtok(char *s, const char *delim) -{ - const char *spanp; - int c, sc; - char *tok; - static char *last; - - - if (s == NULL && (s = last) == NULL) - return (NULL); - - /* - * Skip (span) leading delimiters (s += strspn(s, delim), sort of). - */ - cont: - c = *s++; - for (spanp = delim; (sc = *spanp++) != 0;) { - if (c == sc) - goto cont; - } - - if (c == 0) { /* no non-delimiter characters */ - last = NULL; - return (NULL); - } - tok = s - 1; - - /* - * Scan token (scan for delimiters: s += strcspn(s, delim), sort of). - * Note that delim must have one NUL; we stop if we see that, too. - */ - for (;;) { - c = *s++; - spanp = delim; - do { - if ((sc = *spanp++) == c) { - if (c == 0) - s = NULL; - else - s[-1] = 0; - last = s; - return (tok); - } - } while (sc != 0); - } - /* NOTREACHED */ -} - LONG HexValue (CHAR ch) diff --git a/reactos/ntoskrnl/ke/i386/vdm.c b/reactos/ntoskrnl/ke/i386/vdm.c index 11a680bbc1b..59c620c36dc 100644 --- a/reactos/ntoskrnl/ke/i386/vdm.c +++ b/reactos/ntoskrnl/ke/i386/vdm.c @@ -1,4 +1,4 @@ -/* $Id:$ +/* $Id$ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS kernel diff --git a/reactos/ntoskrnl/ntoskrnl.xml b/reactos/ntoskrnl/ntoskrnl.xml new file mode 100644 index 00000000000..b200bdf1a29 --- /dev/null +++ b/reactos/ntoskrnl/ntoskrnl.xml @@ -0,0 +1,348 @@ + + + + + + + + include + include + csq + hal + kjs + pseh + rtl + rosrtl + string + rossym + + ntoskrnl.h + + + + + main.S + bios.c + brkpoint.c + ctxswitch.S + exp.c + fpu.c + gdt.c + idt.c + irq.c + irqhand.s + kernel.c + ldt.c + stkswitch.S + syscall.S + thread.c + tlbflush.S + trap.s + tss.c + usercall.S + usertrap.c + v86m.c + v86m_sup.S + vdm.c + + + apc.c + bug.c + catch.c + clock.c + device.c + dpc.c + event.c + gate.c + gmutex.c + ipi.c + kqueue.c + kthread.c + main.c + mutex.c + process.c + profile.c + queue.c + sem.c + spinlock.c + timer.c + usercall.c + wait.c + + + cacheman.c + copy.c + fs.c + mdl.c + pin.c + view.c + + + import.c + ntfunc.c + regfile.c + registry.c + regobj.c + + + + + + + i386-dis.c + kdb_help.S + longjmp.S + setjmp.S + + + + + + kdb.c + kdb_cli.c + kdb_expr.c + kdb_keyboard.c + kdb_serial.c + kdb_string.c + + + kdb_symbols.c + + + + dbgkutil.c + debug.c + + + + + interlck.c + + + callback.c + dbgctrl.c + error.c + event.c + evtpair.c + fmutex.c + handle.c + init.c + interlck.c + list.c + lookas.c + mutant.c + power.c + profile.c + resource.c + rundown.c + sem.c + synch.c + sysinfo.c + time.c + timer.c + util.c + uuid.c + win32k.c + work.c + zone.c + zw.S + + + context.c + fastio.c + filelock.c + mcb.c + name.c + notify.c + oplock.c + pool.c + tunnel.c + unc.c + util.c + + + inbv.c + + + adapter.c + arcname.c + bootlog.c + controller.c + device.c + deviface.c + disk.c + driver.c + efi.c + error.c + event.c + file.c + fs.c + iocomp.c + iomgr.c + iowork.c + irp.c + irq.c + mdl.c + plugplay.c + pnpdma.c + pnpmgr.c + pnpnotify.c + pnpreport.c + pnproot.c + rawfs.c + remlock.c + resource.c + share.c + symlink.c + timer.c + vpb.c + wmi.c + + + + bochs.c + gdbstub.c + + kdinit.c + kdio.c + kdmain.c + + + init.c + loader.c + resource.c + rtl.c + sysdll.c + userldr.c + + + close.c + complete.c + connect.c + create.c + listen.c + port.c + query.c + queue.c + receive.c + reply.c + send.c + + + + + memsafe.s + page.c + pfault.c + + + anonmem.c + aspace.c + balance.c + cont.c + drvlck.c + elf32.c + elf64.c + freelist.c + iospace.c + kmap.c + marea.c + mdl.c + mm.c + process.c + mminit.c + mpw.c + ncache.c + npool.c + pagefile.c + pageop.c + pager.c + pagfault.c + paging.c + pe.c + physical.c + pool.c + ppool.c + region.c + rmap.c + section.c + verifier.c + virtual.c + wset.c + + + dirobj.c + handle.c + namespc.c + ntobj.c + object.c + sdcache.c + security.c + symlink.c + wait.c + + + power.c + + + + + continue.c + + + cid.c + debug.c + idle.c + job.c + kill.c + locale.c + notify.c + process.c + psmgr.c + query.c + quota.c + security.c + suspend.c + thread.c + win32.c + + + + + exception.c + seh.s + + + atom.c + capture.c + ctype.c + debug.c + handle.c + libsupp.c + message.c + misc.c + nls.c + purecall.c + rangelist.c + regio.c + sprintf.c + stdlib.c + string.c + strtok.c + swprintf.c + wstring.c + + + access.c + acl.c + audit.c + lsa.c + luid.c + priv.c + sd.c + semgr.c + sid.c + token.c + + ntoskrnl.rc + diff --git a/reactos/proxy.mak b/reactos/proxy.mak new file mode 100644 index 00000000000..33489df7230 --- /dev/null +++ b/reactos/proxy.mak @@ -0,0 +1,12 @@ +MAKEFLAGS += --no-print-directory + +$(DEFAULT): + @$(MAKE) -C $(TOP) $(DEFAULT) + +all: + @$(MAKE) -C $(TOP) all + +clean: + @$(MAKE) -C $(TOP) $(DEFAULT)_clean + +$(DEFAULT)_clean: clean diff --git a/reactos/regtests/directory.xml b/reactos/regtests/directory.xml new file mode 100644 index 00000000000..40520c667e2 --- /dev/null +++ b/reactos/regtests/directory.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/reactos/regtests/regtests/Makefile b/reactos/regtests/regtests/Makefile deleted file mode 100755 index 49f51ccf958..00000000000 --- a/reactos/regtests/regtests/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET_NORC = yes - -TARGET_TYPE = dynlink - -TARGET_NAME = regtests - -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror - -TARGET_OBJECTS = \ - regtests.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/regtests/regtests/regtests.def b/reactos/regtests/regtests/regtests.def index 652c3d3423b..79fbd224312 100644 --- a/reactos/regtests/regtests/regtests.def +++ b/reactos/regtests/regtests/regtests.def @@ -7,4 +7,3 @@ _LoadLibraryA@4 _CreateThread@24 _TerminateThread@8 _WaitForSingleObject@8 - diff --git a/reactos/regtests/regtests/regtests.xml b/reactos/regtests/regtests/regtests.xml new file mode 100644 index 00000000000..aee66c56167 --- /dev/null +++ b/reactos/regtests/regtests/regtests.xml @@ -0,0 +1,7 @@ + + + . + + kernel32 + regtests.c + diff --git a/reactos/regtests/shared/Makefile b/reactos/regtests/shared/Makefile deleted file mode 100755 index b6eea40c01c..00000000000 --- a/reactos/regtests/shared/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_NORC = yes - -TARGET_TYPE = library - -TARGET_NAME = rtshared - -TARGET_CFLAGS = -Wall -Werror - -TARGET_OBJECTS = \ - regtests.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/regtests/shared/regtests.c b/reactos/regtests/shared/regtests.c index 24528575db2..1729cae064c 100755 --- a/reactos/regtests/shared/regtests.c +++ b/reactos/regtests/shared/regtests.c @@ -60,11 +60,11 @@ PerformTest(PVOID _arg) if (_Result != TS_OK) { - sprintf(OutputBuffer, "ROSREGTEST: |%s| Status: Failed (%s)\n", TestName, Buffer); + sprintf(OutputBuffer, "[%s] Failed (%s)\n", TestName, Buffer); } else { - sprintf(OutputBuffer, "ROSREGTEST: |%s| Status: Success\n", TestName); + sprintf(OutputBuffer, "[%s] Success\n", TestName); } if (OutputRoutine != NULL) { @@ -137,7 +137,7 @@ PerformTests(TestOutputRoutine OutputRoutine, LPSTR TestName) if (hThread == NULL) { sprintf(OutputBuffer, - "ROSREGTEST: |%s| Status: Failed (CreateThread failed: 0x%x)\n", + "[%s] Failed (CreateThread failed: 0x%x)\n", Name, (unsigned int)GetLastError()); } else if (_WaitForSingleObject(hThread, TimeOut) == WAIT_TIMEOUT) @@ -145,12 +145,12 @@ PerformTests(TestOutputRoutine OutputRoutine, LPSTR TestName) if (!_TerminateThread(hThread, 0)) { sprintf(OutputBuffer, - "ROSREGTEST: |%s| Status: Failed (Test timed out - %d ms, TerminateThread failed: 0x%x)\n", + "[%s] Failed (Test timed out - %d ms, TerminateThread failed: 0x%x)\n", Name, (int)TimeOut, (unsigned int)GetLastError()); } else { - sprintf(OutputBuffer, "ROSREGTEST: |%s| Status: Failed (Test timed out - %d ms)\n", Name, (int)TimeOut); + sprintf(OutputBuffer, "[%s] Failed (Test timed out - %d ms)\n", Name, (int)TimeOut); } } else diff --git a/reactos/regtests/shared/rtshared.xml b/reactos/regtests/shared/rtshared.xml new file mode 100644 index 00000000000..eb58e6524d7 --- /dev/null +++ b/reactos/regtests/shared/rtshared.xml @@ -0,0 +1,4 @@ + + . + regtests.c + diff --git a/reactos/rules.mak b/reactos/rules.mak deleted file mode 100644 index 4af9a2a6424..00000000000 --- a/reactos/rules.mak +++ /dev/null @@ -1,247 +0,0 @@ -# Default to half-verbose mode -ifeq ($(VERBOSE),no) - Q = @ - HALFVERBOSEECHO = @: - # Do not print "Entering directory ..." - export MAKEFLAGS += --no-print-directory - # Be silent - export MAKEFLAGS += --silent -else -ifeq ($(VERBOSE),yes) - Q = - HALFVERBOSEECHO = @: -else - Q = @ - # the following is a hack to get the target name for wine dlls - # it's disabled because it produces warnings about overriden rules for author.c - #ifeq ($(TARGET_TYPE),winedll) - # export TOOLS_PATH = $(PATH_TO_TOP)/tools - # -include Makefile.ros - #endif - ifeq ($(TARGET_NAME),) - HALFVERBOSEECHO = @echo - else - HALFVERBOSEECHO = @echo $(TARGET_NAME): - endif - # Do not print "Entering directory ..." - export MAKEFLAGS += --no-print-directory - # Be silent - export MAKEFLAGS += --silent -endif -endif - -export MAKE := @$(MAKE) - -ifeq ($(VERBOSE),no) -endif - -# detect msys on a Windows host as linux -ifeq ($(OSTYPE),msys) -export HOST=mingw32-linux -endif - -# detect Windows host environment -ifeq ($(HOST),) -ifeq ($(word 1,$(shell gcc -dumpmachine)),mingw32) -export HOST=mingw32-windows -else -export HOST=mingw32-linux -endif -endif - -# Default to building map files which includes source and asm code -# Other options are: yes -ifeq ($(BUILD_MAP),) -export BUILD_MAP = full -endif - -# Default to dumping .sym files out of .nostrip files -ifeq ($(BUILD_SYM),) -export BUILD_SYM = yes -endif - -# Default to minimal dependencies, making components not -# depend on all import libraries -ifeq ($(MINIMALDEPENDENCIES),) -export MINIMALDEPENDENCIES = yes -endif - -# Default to no PCH support -ifeq ($(ROS_USE_PCH),) -export ROS_USE_PCH = no -endif - -# uncomment if you use bochs and it displays only 30 rows -# BOCHS_30ROWS = yes - -# -# Choose various options -# -ifeq ($(HOST),mingw32-linux64) -export HOST_TYPE = unix -export NASM_FORMAT = win32 -export PREFIX = mingw32- -export EXE_POSTFIX := -export EXE_PREFIX := ./ -export DLLTOOL = $(PREFIX)dlltool --as=$(PREFIX)as -# -# Do not change NASM_CMD to NASM because older versions of -# nasm doesn't like an environment variable NASM -# -export NASM_CMD = nasm -export DOSCLI = -export FLOPPY_DIR = /mnt/floppy -export SEP := / -export PIPE := -export HOST_ARCH := -m32 -endif - -ifeq ($(HOST),mingw32-linux) -export HOST_TYPE = unix -export NASM_FORMAT = win32 -ifeq ($(OSTYPE),msys) -export PREFIX := -export EXE_POSTFIX := .exe -else -export PREFIX = mingw32- -export EXE_POSTFIX := -endif -export EXE_PREFIX := ./ -export DLLTOOL = $(PREFIX)dlltool --as=$(PREFIX)as -# -# Do not change NASM_CMD to NASM because older versions of -# nasm doesn't like an environment variable NASM -# -export NASM_CMD = nasm -export DOSCLI = -export FLOPPY_DIR = /mnt/floppy -export SEP := / -export PIPE := -endif - -ifeq ($(HOST),mingw32-windows) -export NASM_FORMAT = win32 -export PREFIX = -export EXE_PREFIX := -export EXE_POSTFIX := .exe -export DLLTOOL = $(Q)$(PREFIX)dlltool --as=$(PREFIX)as -# -# Do not change NASM_CMD to NASM because older versions of -# nasm doesn't like an environment variable NASM -# -export NASM_CMD = $(Q)nasmw -export DOSCLI = yes -export FLOPPY_DIR = A: -export SEP := \$(EMPTY_VAR) -export PIPE := -pipe -endif - -# TOPDIR is used by make bootcd but not defined anywhere. Usurp pointed out -# that it has the same meaning as PATH_TO_TOP. -export TOPDIR = $(PATH_TO_TOP) - -# Directory to build a bootable CD image in -export BOOTCD_DIR=$(TOPDIR)/../bootcd/disk -export LIVECD_DIR=$(TOPDIR)/../livecd/disk - -ifeq ($(LIVECD_INSTALL),yes) -export INSTALL_DIR=$(LIVECD_DIR)/reactos -else -# Use environment var ROS_INSTALL to override default install dir -ifeq ($(ROS_INSTALL),) -ifeq ($(HOST),mingw32-windows) -export INSTALL_DIR = C:/reactos -else -export INSTALL_DIR = $(PATH_TO_TOP)/reactos -endif -else -export INSTALL_DIR = $(ROS_INSTALL) -endif -endif - - -export CC = $(Q)$(PREFIX)gcc -export CXX = $(Q)$(PREFIX)g++ -export HOST_CC = $(Q)gcc $(HOST_ARCH) -export HOST_CXX = $(Q)g++ $(HOST_ARCH) -export HOST_AR = $(Q)ar -export HOST_NM = $(Q)nm -export LD = $(Q)$(PREFIX)ld -export NM = $(Q)$(PREFIX)nm -export OBJCOPY = $(Q)$(PREFIX)objcopy -export STRIP = $(Q)$(PREFIX)strip -export AS = $(Q)$(PREFIX)gcc -c -x assembler-with-cpp -export CPP = $(Q)$(PREFIX)cpp -export AR = $(Q)$(PREFIX)ar -export RC = $(Q)$(PREFIX)windres -export WRC = $(Q)$(WINE_TOP)/tools/wrc/wrc -export OBJCOPY = $(Q)$(PREFIX)objcopy -export OBJDUMP =$(Q)$(PREFIX)objdump -export TOOLS_PATH = $(PATH_TO_TOP)/tools -export W32API_PATH = $(PATH_TO_TOP)/w32api -export CP = $(Q)$(TOOLS_PATH)/rcopy -export RM = $(Q)$(TOOLS_PATH)/rdel -export RLINE = $(Q)$(TOOLS_PATH)/rline -export RMDIR = $(Q)$(TOOLS_PATH)/rrmdir -export RMKDIR = $(Q)$(TOOLS_PATH)/rmkdir -export RSYM = $(Q)$(TOOLS_PATH)/rsym -export RTOUCH = $(Q)$(TOOLS_PATH)/rtouch -export REGTESTS = $(Q)$(TOOLS_PATH)/regtests -export MC = $(Q)$(TOOLS_PATH)/wmc/wmc -export CABMAN = $(Q)$(TOOLS_PATH)/cabman/cabman -export WINEBUILD = $(Q)$(TOOLS_PATH)/winebuild/winebuild -export WINE2ROS = $(Q)$(TOOLS_PATH)/wine2ros/wine2ros -export MKHIVE = $(Q)$(TOOLS_PATH)/mkhive/mkhive -export CDMAKE = $(Q)$(TOOLS_PATH)/cdmake/cdmake -export BIN2RES = $(Q)$(TOOLS_PATH)/bin2res/bin2res -export XSLTPROC = $(Q)xsltproc -export MS2PS = $(Q)$(TOOLS_PATH)/ms2ps/ms2ps -export WRC = $(Q)$(TOOLS_PATH)/wrc/wrc -export WIDL = $(Q)$(TOOLS_PATH)/widl/widl - -export HOST_STD_CFLAGS = -I$(PATH_TO_TOP)/include -I$(W32API_PATH)/include -pipe -D_M_IX86 $(HOSTARCH) -export STD_CFLAGS = -I$(PATH_TO_TOP)/include -I$(W32API_PATH)/include -pipe -march=$(OARCH) -D_M_IX86 -export HOST_STD_CPPFLAGS = $(HOST_STD_CFLAGS) -export STD_CPPFLAGS = $(STD_CFLAGS) -# Check for 3GB -ifeq ($(3GB), 1) -export STD_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(W32API_PATH)/include -D__ASM__ -D_M_IX86 -D__3GB__ -else -export STD_ASFLAGS = -I$(PATH_TO_TOP)/include -I$(W32API_PATH)/include -D__ASM__ -D_M_IX86 -endif -export STD_RCFLAGS = --include-dir $(PATH_TO_TOP)/include --include-dir $(W32API_PATH)/include -export STD_NFLAGS = -f win32 - -# Developer Kits -export DK_PATH=$(PATH_TO_TOP)/dk -# Native and kernel mode -export DDK_PATH=$(DK_PATH)/nkm -export DDK_PATH_LIB=$(DDK_PATH)/lib -export DDK_PATH_INC=$(PATH_TO_TOP)/include -# Win32 -export SDK_PATH=$(DK_PATH)/w32 -export SDK_PATH_LIB=$(SDK_PATH)/lib -export SDK_PATH_INC=$(PATH_TO_TOP)/include -# POSIX+ -export XDK_PATH=$(DK_PATH)/psx -export XDK_PATH_LIB=$(XDK_PATH)/lib -export XDK_PATH_INC=$(XDK_PATH)/include - -# Wine Integration -export WINE_PATH=$(PATH_TO_TOP)/../wine -export WINE_PATH_LIB=$(WINE_PATH)/lib -export WINE_PATH_INC=$(WINE_PATH)/include - -# Posix+ Integration -export POSIX_PATH=$(PATH_TO_TOP)/../posix -export POSIX_PATH_LIB=$(POSIX_PATH)/lib -export POSIX_PATH_INC=$(POSIX_PATH)/include - -# OS/2 Integration -export OS2_PATH=$(PATH_TO_TOP)/../os2 -export OS2_PATH_LIB=$(OS2_PATH)/lib -export OS2_PATH_INC=$(OS2_PATH)/include - -# Other systems integration -export REGTESTS_PATH=$(PATH_TO_TOP)/regtests -export REGTESTS_PATH_INC=$(PATH_TO_TOP)/regtests/shared diff --git a/reactos/services/directory.xml b/reactos/services/directory.xml new file mode 100644 index 00000000000..13d13cc18c5 --- /dev/null +++ b/reactos/services/directory.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/reactos/services/eventlog/eventlog.c b/reactos/services/eventlog/eventlog.c index 4da6ffcd263..c5590fdbbf1 100644 --- a/reactos/services/eventlog/eventlog.c +++ b/reactos/services/eventlog/eventlog.c @@ -36,7 +36,6 @@ #include "eventlog.h" -#define DBG #define NDEBUG #include diff --git a/reactos/services/eventlog/eventlog.xml b/reactos/services/eventlog/eventlog.xml new file mode 100644 index 00000000000..2d48b56c526 --- /dev/null +++ b/reactos/services/eventlog/eventlog.xml @@ -0,0 +1,9 @@ + + . + ntdll + kernel32 + advapi32 + eventlog.c + logport.c + eventlog.rc + diff --git a/reactos/services/eventlog/makefile b/reactos/services/eventlog/makefile deleted file mode 100644 index 1badfe94fbf..00000000000 --- a/reactos/services/eventlog/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = eventlog - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a - -TARGET_OBJECTS = $(TARGET_NAME).o logport.o - -TARGET_CFLAGS = -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/services/rpcss/makefile b/reactos/services/rpcss/makefile deleted file mode 100644 index 93147ebe1e1..00000000000 --- a/reactos/services/rpcss/makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = rpcss - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = kernel32.a advapi32.a - -TARGET_OBJECTS = $(TARGET_NAME).o endpoint.o - -TARGET_CFLAGS = -D__USE_W32API -Wall -Werror - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/services/rpcss/rpcss.xml b/reactos/services/rpcss/rpcss.xml new file mode 100644 index 00000000000..2775a2b9f28 --- /dev/null +++ b/reactos/services/rpcss/rpcss.xml @@ -0,0 +1,9 @@ + + . + + kernel32 + advapi32 + rpcss.c + endpoint.c + rpcss.rc + diff --git a/reactos/services/umpnpmgr/makefile b/reactos/services/umpnpmgr/makefile index d935174a769..5484fb58755 100644 --- a/reactos/services/umpnpmgr/makefile +++ b/reactos/services/umpnpmgr/makefile @@ -1,36 +1,5 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = umpnpmgr - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ntdll.a kernel32.a advapi32.a rpcrt4.a - -TARGET_OBJECTS = pnp_s.o umpnpmgr.o - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -DUNICODE -D_UNICODE - -TARGET_CLEAN = pnp_s.c pnp.h - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -WIDL_FLAGS = \ - -D _X86_ -D MIDL_PASS \ - -I $(PATH_TO_TOP)/w32api/include - -pnp_s.c pnp.h: $(PATH_TO_TOP)/include/idl/pnp.idl - $(WIDL) $(WIDL_FLAGS) -h -H pnp.h -s -S pnp_s.c $(PATH_TO_TOP)/include/idl/pnp.idl - -# EOF +# This file is automatically generated. + +TOP = ..\.. +DEFAULT = umpnpmgr +include $(TOP)/proxy.mak diff --git a/reactos/services/umpnpmgr/umpnpmgr.c b/reactos/services/umpnpmgr/umpnpmgr.c index 1d7b16b4ded..9c3244cb3e7 100644 --- a/reactos/services/umpnpmgr/umpnpmgr.c +++ b/reactos/services/umpnpmgr/umpnpmgr.c @@ -38,7 +38,7 @@ #include #include -#include "pnp.h" +#include "pnp_c.h" #define DBG #define NDEBUG diff --git a/reactos/services/umpnpmgr/umpnpmgr.xml b/reactos/services/umpnpmgr/umpnpmgr.xml new file mode 100644 index 00000000000..84ff6f93c73 --- /dev/null +++ b/reactos/services/umpnpmgr/umpnpmgr.xml @@ -0,0 +1,14 @@ + + . + . + + + + pnp_server + ntdll + kernel32 + advapi32 + rpcrt4 + umpnpmgr.c + umpnpmgr.rc + diff --git a/reactos/subsys/csrss/csrss.def b/reactos/subsys/csrss/csrss.def deleted file mode 100644 index 292c1aa6ec8..00000000000 --- a/reactos/subsys/csrss/csrss.def +++ /dev/null @@ -1,8 +0,0 @@ -; $Id$ -; - -LIBRARY csrss.exe - -EXPORTS - -CsrServerInitialization diff --git a/reactos/subsys/csrss/csrss.xml b/reactos/subsys/csrss/csrss.xml new file mode 100644 index 00000000000..40aa5fbfd16 --- /dev/null +++ b/reactos/subsys/csrss/csrss.xml @@ -0,0 +1,24 @@ + + . + include + + 0x0600 + 0x0501 + rosrtl + ntdll + smdll + + handle.c + process.c + user.c + wapi.c + + csrss.c + init.c + print.c + video.c + csrss.rc + + + + diff --git a/reactos/subsys/csrss/makefile b/reactos/subsys/csrss/makefile deleted file mode 100644 index 03040314e31..00000000000 --- a/reactos/subsys/csrss/makefile +++ /dev/null @@ -1,49 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program -#TARGET_TYPE = proglib - -TARGET_APPTYPE = native - -TARGET_NAME = csrss - -TARGET_SDKLIBS = rosrtl.a ntdll.a smdll.a - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__NTAPP__ -D__USE_W32API -Wall -Werror -Iinclude - -TARGET_LFLAGS = -nostdlib - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D__USE_W32API -DWINVER=0x0600 -D_WIN32_WINNT=0x0501 - -SUBDIRS = win32csr - -OBJECTS_API = \ - api/process.o \ - api/wapi.o \ - api/handle.o \ - api/user.o - -OBJECTS_MISC = \ - $(TARGET_NAME).o \ - init.o \ - print.o \ - video.o - -TARGET_OBJECTS = \ - $(OBJECTS_API) \ - $(OBJECTS_MISC) - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/subsys/csrss/win32csr/Makefile b/reactos/subsys/csrss/win32csr/Makefile deleted file mode 100644 index 6493def575f..00000000000 --- a/reactos/subsys/csrss/win32csr/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = dynlink - -TARGET_NAME = win32csr - -TARGET_BASE = 0x5ffb0000 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D__USE_W32API -D_DISABLE_TIDENTS -Wall -Werror -I../include - -TARGET_LFLAGS = -nostartfiles -nostdlib - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a gdi32.a - -TARGET_OBJECTS = dllmain.o conio.o desktopbg.o exitros.o guiconsole.o tuiconsole.o - -TARGET_ENTRY = _DllMain@12 - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/csrss/win32csr/win32csr.xml b/reactos/subsys/csrss/win32csr/win32csr.xml new file mode 100644 index 00000000000..b6f846394cc --- /dev/null +++ b/reactos/subsys/csrss/win32csr/win32csr.xml @@ -0,0 +1,18 @@ + + + . + include + + + ntdll + kernel32 + user32 + gdi32 + conio.c + desktopbg.c + dllmain.c + exitros.c + guiconsole.c + tuiconsole.c + win32csr.rc + diff --git a/reactos/subsys/directory.xml b/reactos/subsys/directory.xml new file mode 100644 index 00000000000..26df8db7d92 --- /dev/null +++ b/reactos/subsys/directory.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/reactos/subsys/ntvdm/makefile b/reactos/subsys/ntvdm/makefile deleted file mode 100644 index 90c8f2a8a29..00000000000 --- a/reactos/subsys/ntvdm/makefile +++ /dev/null @@ -1,24 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = ntvdm - -TARGET_INSTALLDIR = system32 - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror -D__USE_W32API - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a gdi32.a advapi32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/ntvdm/ntvdm.xml b/reactos/subsys/ntvdm/ntvdm.xml new file mode 100644 index 00000000000..37ff7428d35 --- /dev/null +++ b/reactos/subsys/ntvdm/ntvdm.xml @@ -0,0 +1,12 @@ + + . + + + ntdll + kernel32 + user32 + gdi32 + advapi32 + ntvdm.c + ntvdm.rc + diff --git a/reactos/subsys/smss/makefile b/reactos/subsys/smss/makefile deleted file mode 100644 index 87f64a855bb..00000000000 --- a/reactos/subsys/smss/makefile +++ /dev/null @@ -1,35 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = native - -TARGET_SDKLIBS = smlib.a ntdll.a - -TARGET_NAME = smss - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__NTAPP__ - -# require os code to explicitly request A/W version of structs/functions -TARGET_CFLAGS += -D_DISABLE_TIDENTS -Wall -Werror - -TARGET_OBJECTS = $(TARGET_NAME).o \ - init.o initheap.o initenv.o initobdir.o initdosdev.o \ - initrun.o initmv.o initwkdll.o initpage.o initss.o \ - initreg.o \ - smapi.o smapicomp.o smapiexec.o smapiquery.o \ - client.o debug.o print.o - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/subsys/smss/smss.xml b/reactos/subsys/smss/smss.xml new file mode 100644 index 00000000000..c6018df689f --- /dev/null +++ b/reactos/subsys/smss/smss.xml @@ -0,0 +1,27 @@ + + . + + smlib + ntdll + -lgcc + client.c + debug.c + init.c + initdosdev.c + initenv.c + initheap.c + initmv.c + initobdir.c + initpage.c + initreg.c + initrun.c + initss.c + initwkdll.c + print.c + smapi.c + smapicomp.c + smapiexec.c + smapiquery.c + smss.c + smss.rc + diff --git a/reactos/subsys/system/autochk/autochk.xml b/reactos/subsys/system/autochk/autochk.xml new file mode 100644 index 00000000000..3fbcc054874 --- /dev/null +++ b/reactos/subsys/system/autochk/autochk.xml @@ -0,0 +1,7 @@ + + . + + ntdll + autochk.c + autochk.rc + diff --git a/reactos/subsys/system/autochk/makefile b/reactos/subsys/system/autochk/makefile deleted file mode 100644 index fb197007a88..00000000000 --- a/reactos/subsys/system/autochk/makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = native - -TARGET_NAME = autochk - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__NTAPP__ -Wall -Werror - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/system/calc/calc.xml b/reactos/subsys/system/calc/calc.xml new file mode 100644 index 00000000000..bc2bad7eefe --- /dev/null +++ b/reactos/subsys/system/calc/calc.xml @@ -0,0 +1,13 @@ + + . + + 0x0501 + kernel32 + user32 + gdi32 + comctl32 + dialog.c + stats.c + winecalc.c + rsrc.rc + diff --git a/reactos/subsys/system/calc/makefile b/reactos/subsys/system/calc/makefile deleted file mode 100644 index d16d28c2912..00000000000 --- a/reactos/subsys/system/calc/makefile +++ /dev/null @@ -1,29 +0,0 @@ -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = calc - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -D_WIN32_IE=0x0501 - -TARGET_RCFLAGS = -D__USE_W32API -D_WIN32_IE=0x0501 - -TARGET_SDKLIBS = \ - kernel32.a \ - user32.a \ - gdi32.a - -TARGET_GCCLIBS = comctl32 - -TARGET_OBJECTS = \ - dialog.o \ - stats.o \ - winecalc.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/cmd/cmd.xml b/reactos/subsys/system/cmd/cmd.xml new file mode 100644 index 00000000000..66e4a9d0fa0 --- /dev/null +++ b/reactos/subsys/system/cmd/cmd.xml @@ -0,0 +1,63 @@ + + include/wine + . + + + 0x0501 + kernel32 + precomp.h + alias.c + attrib.c + batch.c + beep.c + call.c + chcp.c + choice.c + cls.c + cmd.c + cmdinput.c + cmdtable.c + color.c + console.c + copy.c + date.c + del.c + delay.c + dir.c + dirstack.c + echo.c + error.c + filecomp.c + for.c + free.c + goto.c + history.c + if.c + internal.c + label.c + locale.c + memory.c + misc.c + move.c + msgbox.c + path.c + pause.c + prompt.c + redir.c + ren.c + screen.c + set.c + shift.c + start.c + strtoclr.c + time.c + timer.c + title.c + type.c + ver.c + verify.c + vol.c + where.c + window.c + cmd.rc + diff --git a/reactos/subsys/system/cmd/makefile b/reactos/subsys/system/cmd/makefile deleted file mode 100644 index 41075aa5229..00000000000 --- a/reactos/subsys/system/cmd/makefile +++ /dev/null @@ -1,38 +0,0 @@ -# -# ReactOS CMD -# -# Makefile -# - -PATH_TO_TOP = ../../.. -TOOLS_PATH = $(PATH_TO_TOP)/tools - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = cmd - -TARGET_PCH = precomp.h - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -DANONYMOUSUNIONS -Wall -Werror \ - -I$(PATH_TO_TOP)/include/wine -D_WIN32_WINNT=0x0501 -DUNICODE -D_UNICODE - -TARGET_OBJECTS = \ - cmd.o attrib.o alias.o batch.o beep.o call.o chcp.o choice.o \ - cls.o cmdinput.o cmdtable.o color.o console.o copy.o date.o del.o \ - delay.o dir.o dirstack.o echo.o error.o filecomp.o for.o free.o \ - goto.o history.o if.o internal.o label.o locale.o memory.o misc.o \ - move.o msgbox.o path.o pause.o prompt.o redir.o ren.o screen.o \ - set.o shift.o start.o strtoclr.o time.o timer.o title.o type.o \ - ver.o verify.o vol.o where.o window.o #cmd.coff - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/subsys/system/dhcp/Makefile b/reactos/subsys/system/dhcp/Makefile deleted file mode 100644 index a6147d92c68..00000000000 --- a/reactos/subsys/system/dhcp/Makefile +++ /dev/null @@ -1,33 +0,0 @@ -# - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = dhcp - -TARGET_CFLAGS = -D__REACTOS__ -D_WIN32_WINNT=0x0501 -D__USE_W32API -Iinclude - -TARGET_OBJECTS = adapter.o alloc.o api.o compat.o dhclient.o dispatch.o \ - hash.o options.o pipe.o privsep.o socket.o tables.o timer.o \ - util.o - -TARGET_SDKLIBS = iphlpapi.a ws2_32.a ntdll.a - -TARGET_INSTALLDIR = system32 - -TARGET_RC_SRCS = dhcp.rc - -TARGET_RC_BINSRC = - -TARGET_RC_BINARIES = - -default: all -DEP_OBJECTS = $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/system/dhcp/dhcp.xml b/reactos/subsys/system/dhcp/dhcp.xml new file mode 100644 index 00000000000..f587f699a96 --- /dev/null +++ b/reactos/subsys/system/dhcp/dhcp.xml @@ -0,0 +1,26 @@ + + . + include + + + 0x0501 + ntdll + kernel32 + ws2_32 + iphlpapi + adapter.c + alloc.c + api.c + compat.c + dhclient.c + dispatch.c + hash.c + options.c + pipe.c + privsep.c + socket.c + tables.c + timer.c + util.c + dhcp.rc + diff --git a/reactos/subsys/system/directory.xml b/reactos/subsys/system/directory.xml new file mode 100644 index 00000000000..686a6523135 --- /dev/null +++ b/reactos/subsys/system/directory.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/reactos/subsys/system/explorer/Makefile b/reactos/subsys/system/explorer/Makefile deleted file mode 100644 index 986abfa9dae..00000000000 --- a/reactos/subsys/system/explorer/Makefile +++ /dev/null @@ -1,76 +0,0 @@ -# -# ReactOS explorer -# -# Makefile -# - -PATH_TO_TOP := ../../.. - -TARGET_TYPE := program - -TARGET_APPTYPE := windows - -TARGET_NAME := explorer - -TARGET_INSTALLDIR := . - -TARGET_CFLAGS := \ - -D__USE_W32API -DWIN32 -D_ROS_ \ - -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DWINVER=0x0500 \ - -DUNICODE -fexceptions -Wall -Wno-unused-value -g \ - -I../../../include/expat - -TARGET_CPPFLAGS := $(TARGET_CFLAGS) - -TARGET_RCFLAGS := -D__USE_W32API -DWIN32 -D_ROS_ -D__WINDRES__ - -TARGET_SDKLIBS := \ - gdi32.a user32.a comctl32.a ole32.a oleaut32.a shell32.a expat.a \ - notifyhook.a ws2_32.a msimg32.a - -TARGET_GCCLIBS := stdc++ uuid - -TARGET_OBJECTS := \ - explorer.o \ - i386-stub-win32.o \ - desktop/desktop.o \ - dialogs/searchprogram.o \ - dialogs/settings.o \ - shell/entries.o \ - shell/fatfs.o \ - shell/filechild.o \ - shell/shellfs.o \ - shell/mainframe.o \ - shell/ntobjfs.o \ - shell/pane.o \ - shell/regfs.o \ - shell/shellbrowser.o \ - shell/unixfs.o \ - shell/webchild.o \ - shell/winfs.o \ - services/startup.o \ - services/shellservices.o \ - taskbar/desktopbar.o \ - taskbar/taskbar.o \ - taskbar/startmenu.o \ - taskbar/traynotify.o \ - taskbar/quicklaunch.o \ - taskbar/favorites.o \ - utility/shellclasses.o \ - utility/utility.o \ - utility/window.o \ - utility/dragdropimpl.o \ - utility/shellbrowserimpl.o \ - utility/xmlstorage.o - -TARGET_CPPAPP := yes - -TARGET_PCH := precomp.h - -SUBDIRS := notifyhook - -DEP_OBJECTS := $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/system/explorer/explorer.xml b/reactos/subsys/system/explorer/explorer.xml new file mode 100644 index 00000000000..f591b62a4ee --- /dev/null +++ b/reactos/subsys/system/explorer/explorer.xml @@ -0,0 +1,74 @@ + + -luuid + -lstdc++ + -fexceptions + . + include/expat + + + + + 0x0600 + 0x0501 + 0x0500 + + kernel32 + gdi32 + user32 + ws2_32 + msimg32 + comctl32 + ole32 + oleaut32 + shell32 + expat + notifyhook + precomp.h + + desktop.cpp + + + searchprogram.cpp + settings.cpp + + + entries.cpp + fatfs.cpp + filechild.cpp + shellfs.cpp + mainframe.cpp + ntobjfs.cpp + pane.cpp + regfs.cpp + shellbrowser.cpp + unixfs.cpp + webchild.cpp + winfs.cpp + + + shellservices.cpp + startup.c + + + desktopbar.cpp + favorites.cpp + taskbar.cpp + startmenu.cpp + traynotify.cpp + quicklaunch.cpp + + + shellclasses.cpp + utility.cpp + window.cpp + dragdropimpl.cpp + shellbrowserimpl.cpp + xmlstorage.cpp + + explorer.cpp + i386-stub-win32.c + explorer.rc + + + + diff --git a/reactos/subsys/system/explorer/notifyhook/Makefile b/reactos/subsys/system/explorer/notifyhook/Makefile deleted file mode 100644 index 297bc091ce6..00000000000 --- a/reactos/subsys/system/explorer/notifyhook/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -PATH_TO_TOP := ../../../.. -TARGET_TYPE := dynlink -TARGET_NAME := notifyhook -TARGET_CFLAGS := -D__USE_W32API -D_WIN32_IE=0x0600 -Wall -D_NOTIFYHOOK_IMPL -#TARGET_NORC := yes -TARGET_DEFONLY := yes -TARGET_OBJECTS := notifyhook.o -TARGET_LFLAGS := -nostartfiles -TARGET_BASE = $(TARGET_BASE_LIB_NOTIFYHOOK) - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/explorer/notifyhook/notifyhook.xml b/reactos/subsys/system/explorer/notifyhook/notifyhook.xml new file mode 100644 index 00000000000..93d13a575a0 --- /dev/null +++ b/reactos/subsys/system/explorer/notifyhook/notifyhook.xml @@ -0,0 +1,10 @@ + + + . + + 0x0600 + + kernel32 + notifyhook.c + notifyhook.rc + diff --git a/reactos/subsys/system/format/format.xml b/reactos/subsys/system/format/format.xml new file mode 100644 index 00000000000..20c566c571a --- /dev/null +++ b/reactos/subsys/system/format/format.xml @@ -0,0 +1,8 @@ + + . + + ntdll + kernel32 + fmifs + format.c + diff --git a/reactos/subsys/system/format/makefile b/reactos/subsys/system/format/makefile deleted file mode 100755 index 05119f1bbc3..00000000000 --- a/reactos/subsys/system/format/makefile +++ /dev/null @@ -1,22 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_SDKLIBS = kernel32.a ntdll.a fmifs.a - -TARGET_NAME = format - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -Werror -Wall -Wno-format - -TARGET_OBJECTS = \ - $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/ibrowser/Makefile b/reactos/subsys/system/ibrowser/Makefile deleted file mode 100644 index 9f6de5e910c..00000000000 --- a/reactos/subsys/system/ibrowser/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -# -# ROS Internet Web Browser -# -# Makefile -# - -PATH_TO_TOP := ../../.. - -TARGET_TYPE := program - -TARGET_APPTYPE := windows - -TARGET_NAME := ibrowser - -TARGET_INSTALLDIR := system32 - -TARGET_CFLAGS := \ - -D__USE_W32API -DWIN32 -D_ROS_ \ - -D_WIN32_IE=0x0600 -D_WIN32_WINNT=0x0501 -DWINVER=0x0500 \ - -DUNICODE -fexceptions -Wall -Wno-unused-value \ - -I../../../include/expat - -TARGET_CPPFLAGS := $(TARGET_CFLAGS) - -TARGET_RCFLAGS := -D__USE_W32API -DWIN32 -D_ROS_ -D__WINDRES__ - -TARGET_SDKLIBS := gdi32.a comctl32.a ole32.a oleaut32.a shell32.a expat.a - -TARGET_GCCLIBS := stdc++ uuid - -TARGET_OBJECTS := \ - ibrowser.o \ - mainframe.o \ - webchild.o \ - favorites.o \ - utility/utility.o \ - utility/window.o \ - utility/xmlstorage.o - -TARGET_CPPAPP := yes - -TARGET_PCH := precomp.h - -DEP_OBJECTS := $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/system/ibrowser/ibrowser.xml b/reactos/subsys/system/ibrowser/ibrowser.xml new file mode 100644 index 00000000000..fb4a57bc377 --- /dev/null +++ b/reactos/subsys/system/ibrowser/ibrowser.xml @@ -0,0 +1,31 @@ + + -fexceptions + . + include/expat + + + + + 0x0600 + 0x0501 + 0x0500 + uuid + kernel32 + gdi32 + comctl32 + ole32 + oleaut32 + shell32 + expat + precomp.h + + utility.cpp + window.cpp + xmlstorage.cpp + + ibrowser.cpp + favorites.cpp + mainframe.cpp + webchild.cpp + ibrowser.rc + diff --git a/reactos/subsys/system/msiexec/Makefile b/reactos/subsys/system/msiexec/Makefile deleted file mode 100644 index 889e5c4868f..00000000000 --- a/reactos/subsys/system/msiexec/Makefile +++ /dev/null @@ -1,36 +0,0 @@ -# - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = msiexec - -TARGET_CFLAGS = -I$(PATH_TO_TOP)/include/wine -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -D__USE_W32API - -TARGET_OBJECTS = msiexec.o - -TARGET_SDKLIBS = wine.a \ - ntdll.a \ - kernel32.a \ - user32.a \ - advapi32.a \ - ole32.a \ - wine_uuid.a \ - msi.a - -TARGET_RC_SRCS = version.rc - -TARGET_RC_BINSRC = - -TARGET_RC_BINARIES = - -default: all -DEP_OBJECTS = $(TARGET_OBJECTS) -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/system/msiexec/msiexec.xml b/reactos/subsys/system/msiexec/msiexec.xml new file mode 100644 index 00000000000..ad522e9a024 --- /dev/null +++ b/reactos/subsys/system/msiexec/msiexec.xml @@ -0,0 +1,19 @@ + + . + include/wine + + + 0x501 + 0x501 + 0x501 + uuid + wine + ntdll + kernel32 + user32 + advapi32 + ole32 + msi + msiexec.c + version.rc + diff --git a/reactos/subsys/system/notepad/Makefile b/reactos/subsys/system/notepad/Makefile deleted file mode 100644 index a587ff25bfa..00000000000 --- a/reactos/subsys/system/notepad/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = notepad - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -D_WIN32_IE=0x0501 - -TARGET_RCFLAGS = -D__USE_W32API -D_WIN32_IE=0x0501 - -TARGET_SDKLIBS = \ - kernel32.a \ - user32.a \ - gdi32.a \ - comdlg32.a - -TARGET_OBJECTS = \ - License_En.o \ - dialog.o \ - license.o \ - main.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/notepad/notepad.xml b/reactos/subsys/system/notepad/notepad.xml new file mode 100644 index 00000000000..e98f9e02df8 --- /dev/null +++ b/reactos/subsys/system/notepad/notepad.xml @@ -0,0 +1,14 @@ + + . + + 0x0501 + kernel32 + user32 + gdi32 + comdlg32 + License_En.c + dialog.c + license.c + main.c + rsrc.rc + diff --git a/reactos/subsys/system/reactos/Makefile b/reactos/subsys/system/reactos/Makefile deleted file mode 100644 index 47280385641..00000000000 --- a/reactos/subsys/system/reactos/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = reactos - -TARGET_CFLAGS = -Wall -Werror -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -D__USE_W32API - -TARGET_SDKLIBS = kernel32.a gdi32.a user32.a - -TARGET_OBJECTS = reactos.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/reactos/reactos.xml b/reactos/subsys/system/reactos/reactos.xml new file mode 100644 index 00000000000..84a0af02776 --- /dev/null +++ b/reactos/subsys/system/reactos/reactos.xml @@ -0,0 +1,12 @@ + + + . + 0x0501 + 0x0501 + + kernel32 + gdi32 + user32 + reactos.c + reactos.rc + diff --git a/reactos/subsys/system/regedit/edit.c b/reactos/subsys/system/regedit/edit.c index 92e4676c65f..f348aae29ad 100644 --- a/reactos/subsys/system/regedit/edit.c +++ b/reactos/subsys/system/regedit/edit.c @@ -271,7 +271,6 @@ LRESULT CALLBACK DwordEditSubclassProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPAR INT_PTR CALLBACK modify_dword_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { WNDPROC oldproc; - TCHAR* valueData; HWND hwndValue; int len; TCHAR ValueString[32]; @@ -398,7 +397,6 @@ INT_PTR CALLBACK modify_dword_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LP INT_PTR CALLBACK modify_binary_dlgproc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { - PVOID valueData; HWND hwndValue; int len; diff --git a/reactos/subsys/system/regedit/hexedit.c b/reactos/subsys/system/regedit/hexedit.c index 68c3e1286f4..a0596ed8719 100644 --- a/reactos/subsys/system/regedit/hexedit.c +++ b/reactos/subsys/system/regedit/hexedit.c @@ -21,6 +21,7 @@ #define WIN32_LEAN_AND_MEAN /* Exclude rarely-used stuff from Windows headers */ #include #include +#include #include #include @@ -227,7 +228,7 @@ HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWO dx = hed->LeftMargin; /* draw address */ - _stprintf(addr, _T("%04X"), linestart); + _stprintf(addr, _T("%04lX"), linestart); TextOut(hDC, dx, dy, addr, 4); dx += ((4 + hed->AddressSpacing) * hed->CharWidth); @@ -274,7 +275,6 @@ HEXEDIT_PaintLines(PHEXEDIT_DATA hed, HDC hDC, DWORD ScrollPos, DWORD First, DWO static DWORD HEXEDIT_HitRegionTest(PHEXEDIT_DATA hed, POINTS pt) { - WINDOWINFO wi; int d; if(pt.x <= hed->LeftMargin) @@ -479,6 +479,7 @@ HEXEDIT_HEM_SETMAXBUFFERSIZE(PHEXEDIT_DATA hed, DWORD nMaxSize) hed->hBuffer = LocalReAlloc(hed->hBuffer, hed->MaxBuffer, LMEM_MOVEABLE); HEXEDIT_Update(hed); } + return 0; } /*** Message Proc *************************************************************/ diff --git a/reactos/subsys/system/regedit/listview.c b/reactos/subsys/system/regedit/listview.c index f8c87dcbde3..c604df622f3 100644 --- a/reactos/subsys/system/regedit/listview.c +++ b/reactos/subsys/system/regedit/listview.c @@ -176,7 +176,7 @@ static void AddEntryToList(HWND hwndLV, LPTSTR Name, DWORD dwValType, void* ValB break; case REG_MULTI_SZ: { - LPTSTR src, str, cursrc; + LPTSTR src, str; if(dwCount >= 2) { src = (LPTSTR)ValBuf; @@ -374,17 +374,6 @@ static int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSor return g_invertSort ? _tcscmp(r->name, l->name) : _tcscmp(l->name, r->name); } -static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ - switch (LOWORD(wParam)) { - /* case ID_FILE_OPEN: */ - /* break; */ - default: - return FALSE; - } - return TRUE; -} - BOOL ListWndNotifyProc(HWND hWnd, WPARAM wParam, LPARAM lParam, BOOL *Result) { NMLVDISPINFO* Info; @@ -445,7 +434,6 @@ BOOL ListWndNotifyProc(HWND hWnd, WPARAM wParam, LPARAM lParam, BOOL *Result) } else { - LONG ret; //if((ret = RenameValue(lineinfo->name, Info->item.pszText)) != ERROR_SUCCESS) { TCHAR msg[128], caption[128]; diff --git a/reactos/subsys/system/regedit/main.c b/reactos/subsys/system/regedit/main.c index 84bc9554668..11c096ddb16 100644 --- a/reactos/subsys/system/regedit/main.c +++ b/reactos/subsys/system/regedit/main.c @@ -21,6 +21,8 @@ #define WIN32_LEAN_AND_MEAN /* Exclude rarely-used stuff from Windows headers */ #include #include +#include +#include #include #include #include @@ -29,7 +31,7 @@ #include "main.h" #include "hexedit.h" - +#include "security.h" BOOL ProcessCmdLine(LPSTR lpCmdLine); @@ -118,7 +120,6 @@ BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) if(!AclUiAvailable) { HMENU hEditMenu; - int mePos; /* hide the Edit/Permissions... menu entry */ hEditMenu = GetSubMenu(hMenuFrame, 1); if(hEditMenu != NULL) diff --git a/reactos/subsys/system/regedit/makefile b/reactos/subsys/system/regedit/makefile deleted file mode 100644 index 4f416389733..00000000000 --- a/reactos/subsys/system/regedit/makefile +++ /dev/null @@ -1,39 +0,0 @@ -# -# ReactOS regedit -# -# Makefile -# - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = regedit - -TARGET_INSTALLDIR = . - -TARGET_CFLAGS = -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -D__USE_W32API - -TARGET_SDKLIBS = kernel32.a advapi32.a user32.a gdi32.a wine_uuid.a ole32.a \ - shell32.a comctl32.a comdlg32.a - -TARGET_OBJECTS = \ - about.o \ - childwnd.o \ - edit.o \ - framewnd.o \ - hexedit.o \ - listview.o \ - main.o \ - regedit.o \ - regproc.o \ - security.o \ - treeview.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/system/regedit/regedit.xml b/reactos/subsys/system/regedit/regedit.xml new file mode 100644 index 00000000000..269f709003e --- /dev/null +++ b/reactos/subsys/system/regedit/regedit.xml @@ -0,0 +1,28 @@ + + . + + 0x0501 + 0x0501 + uuid + kernel32 + user32 + gdi32 + advapi32 + comdlg32 + ole32 + shell32 + comctl32 + comdlg32 + about.c + childwnd.c + edit.c + framewnd.c + hexedit.c + listview.c + main.c + regedit.c + regproc.c + security.c + treeview.c + rsrc.rc + diff --git a/reactos/subsys/system/regedit/regproc.c b/reactos/subsys/system/regedit/regproc.c index 445cdce69a8..619eabdd558 100644 --- a/reactos/subsys/system/regedit/regproc.c +++ b/reactos/subsys/system/regedit/regproc.c @@ -22,6 +22,7 @@ #include #include +#include #include #include #include diff --git a/reactos/subsys/system/regedit/security.c b/reactos/subsys/system/regedit/security.c index 25f4c5ef31a..3ac338cdbf8 100644 --- a/reactos/subsys/system/regedit/security.c +++ b/reactos/subsys/system/regedit/security.c @@ -36,6 +36,23 @@ Implementation of the CRegKeySecurity interface ******************************************************************************/ +static ifaceCRegKeySecurityVbtl efvt = +{ + /* IUnknown methods */ + CRegKeySecurity_fnQueryInterface, + CRegKeySecurity_fnAddRef, + CRegKeySecurity_fnRelease, + + /* CRegKeySecurity methods */ + CRegKeySecurity_fnGetObjectInformation, + CRegKeySecurity_fnGetSecurity, + CRegKeySecurity_fnSetSecurity, + CRegKeySecurity_fnGetAccessRights, + CRegKeySecurity_fnMapGeneric, + CRegKeySecurity_fnGetInheritTypes, + CRegKeySecurity_fnPropertySheetPageCallback +}; + SI_ACCESS RegAccess[] = { {&GUID_NULL, KEY_ALL_ACCESS, (LPWSTR)MAKEINTRESOURCE(IDS_ACCESS_FULLCONTROL), SI_ACCESS_GENERAL | SI_ACCESS_SPECIFIC}, {&GUID_NULL, KEY_READ, (LPWSTR)MAKEINTRESOURCE(IDS_ACCESS_READ), SI_ACCESS_GENERAL}, @@ -257,7 +274,6 @@ RegKeyEditPermissions(HWND hWndOwner, LPCTSTR lpKeyName) { BOOL Result; - HMODULE hAclEditDll; LPWSTR Machine, KeyName; HKEY hInfoKey; LPREGKEYSECURITY RegKeySecurity; diff --git a/reactos/subsys/system/regedit/security.h b/reactos/subsys/system/regedit/security.h index 1035efc6d8d..64cb3f214f5 100644 --- a/reactos/subsys/system/regedit/security.h +++ b/reactos/subsys/system/regedit/security.h @@ -1,6 +1,12 @@ #ifndef _REGEXP_SECURITY_H #define _REGEXP_SECURITY_H +BOOL +InitializeAclUiDll(VOID); + +VOID +UnloadAclUiDll(VOID); + /* FIXME - remove the definition */ DWORD STDCALL GetSecurityInfo(HANDLE handle, @@ -103,23 +109,6 @@ HRESULT STDMETHODCALLTYPE CRegKeySecurity_fnPropertySheetPageCallback(LPREGKEYSE UINT uMsg, SI_PAGE_TYPE uPage); -static ifaceCRegKeySecurityVbtl efvt = -{ - /* IUnknown methods */ - CRegKeySecurity_fnQueryInterface, - CRegKeySecurity_fnAddRef, - CRegKeySecurity_fnRelease, - - /* CRegKeySecurity methods */ - CRegKeySecurity_fnGetObjectInformation, - CRegKeySecurity_fnGetSecurity, - CRegKeySecurity_fnSetSecurity, - CRegKeySecurity_fnGetAccessRights, - CRegKeySecurity_fnMapGeneric, - CRegKeySecurity_fnGetInheritTypes, - CRegKeySecurity_fnPropertySheetPageCallback -}; - #endif /* _REGEXP_SECURITY_H */ /* EOF */ diff --git a/reactos/subsys/system/regsvr32/makefile b/reactos/subsys/system/regsvr32/makefile deleted file mode 100644 index 9f054769471..00000000000 --- a/reactos/subsys/system/regsvr32/makefile +++ /dev/null @@ -1,19 +0,0 @@ -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = regsvr32 - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = kernel32.a user32.a ole32.a - -TARGET_OBJECTS = regsvr32.o - -TARGET_CFLAGS += -DUNICODE -Wall -Werror -D__USE_W32API - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/regsvr32/regsvr32.xml b/reactos/subsys/system/regsvr32/regsvr32.xml new file mode 100644 index 00000000000..1b0bf93f05a --- /dev/null +++ b/reactos/subsys/system/regsvr32/regsvr32.xml @@ -0,0 +1,10 @@ + + . + + + kernel32 + user32 + ole32 + regsvr32.c + regsvr32.rc + diff --git a/reactos/subsys/system/reporterror/Makefile b/reactos/subsys/system/reporterror/Makefile deleted file mode 100644 index b27b99ebe72..00000000000 --- a/reactos/subsys/system/reporterror/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = reporterror - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -DUNICODE -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 - -TARGET_SDKLIBS = advapi32.a comctl32.a comdlg32.a shell32.a ws2_32.a - -TARGET_OBJECTS = \ - $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/reporterror/reporterror.c b/reactos/subsys/system/reporterror/reporterror.c index 7c9a177873e..e0543595648 100644 --- a/reactos/subsys/system/reporterror/reporterror.c +++ b/reactos/subsys/system/reporterror/reporterror.c @@ -86,6 +86,7 @@ FillErrorReport(HWND hwndDlg) return errorReport; } +VOID ReleaseErrorReport(LPERROR_REPORT errorReport) { if (errorReport->YourEmail) @@ -336,10 +337,8 @@ ReceiveResponse(SOCKET socket, LPSTR responseBuffer, PULONG responseBufferSize) { PCHAR pch = (PCHAR)responseBuffer; ULONG length = 0; - INT contentLength = 0; fd_set fdset[1]; struct timeval timeout; - CHAR buf[4000]; FD_ZERO(&fdset); FD_SET(socket, &fdset); @@ -396,7 +395,6 @@ SubmissionThread(LPVOID lpParameter) SOCKET socket; HANDLE hThread; INT error; - INT i; if (AbortSubmission != 0) goto done; @@ -601,11 +599,9 @@ WinMain(HINSTANCE hInstance, LPSTR lpszCmdLine, int nCmdShow) { - WORD wVersionRequested; - WSADATA wsaData; - INT error; - INT version; - WCHAR *lc; + WORD wVersionRequested; + WSADATA wsaData; + INT error; hAppInstance = hInstance; @@ -618,12 +614,12 @@ WinMain(HINSTANCE hInstance, LoadString(hAppInstance, IDS_FAILED_TO_INITIALIZE_WINSOCK, format, sizeof(format) / sizeof(WCHAR)); wsprintf(message, format, error); MessageBox(NULL, message, NULL, MB_ICONWARNING); - return; + return 0; } CreateWizard(); - WSACleanup(); + WSACleanup(); return 0; } diff --git a/reactos/subsys/system/reporterror/reporterror.xml b/reactos/subsys/system/reporterror/reporterror.xml new file mode 100644 index 00000000000..bf9a58b3998 --- /dev/null +++ b/reactos/subsys/system/reporterror/reporterror.xml @@ -0,0 +1,17 @@ + + . + + + 0x501 + 0x0501 + kernel32 + user32 + gdi32 + advapi32 + ws2_32 + comctl32 + comdlg32 + shell32 + reporterror.c + reporterror.rc + diff --git a/reactos/subsys/system/rundll32/Makefile b/reactos/subsys/system/rundll32/Makefile deleted file mode 100644 index 6326cc53821..00000000000 --- a/reactos/subsys/system/rundll32/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = rundll32 - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = kernel32.a user32.a - -TARGET_OBJECTS = rundll32.o - -TARGET_CFLAGS += -DUNICODE -Wall -Werror -D__USE_W32API - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/system/rundll32/rundll32.xml b/reactos/subsys/system/rundll32/rundll32.xml new file mode 100644 index 00000000000..278c47a0dba --- /dev/null +++ b/reactos/subsys/system/rundll32/rundll32.xml @@ -0,0 +1,9 @@ + + . + + + kernel32 + user32 + rundll32.c + rundll32.rc + diff --git a/reactos/subsys/system/services/makefile b/reactos/subsys/system/services/makefile deleted file mode 100644 index e109909b31f..00000000000 --- a/reactos/subsys/system/services/makefile +++ /dev/null @@ -1,38 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = services - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a rpcrt4.a - -TARGET_OBJECTS = svcctl_s.o database.o services.o rpcserver.o - -TARGET_CFLAGS = -Wall -Werror -fno-builtin \ - -D__USE_W32API \ - -D_WIN32_IE=0x0500 \ - -D_WIN32_WINNT=0x501 \ - -DWINVER=0x600 \ - -DUNICODE \ - -D_UNICODE - -TARGET_CLEAN = svcctl_s.c svcctl_s.h - -DEP_OBJECTS = $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -svcctl_s.c svcctl_s.h: $(PATH_TO_TOP)/include/idl/svcctl.idl - $(WIDL) -o -h -H svcctl_s.h -s -S svcctl_s.c $(PATH_TO_TOP)/include/idl/svcctl.idl - -# EOF diff --git a/reactos/subsys/system/services/services.xml b/reactos/subsys/system/services/services.xml new file mode 100644 index 00000000000..8073ff8bf28 --- /dev/null +++ b/reactos/subsys/system/services/services.xml @@ -0,0 +1,17 @@ + + . + include/idl + + + + scm_server + ntdll + kernel32 + user32 + advapi32 + rpcrt4 + database.c + rpcserver.c + services.c + services.rc + diff --git a/reactos/subsys/system/setup/makefile b/reactos/subsys/system/setup/makefile deleted file mode 100644 index 61e69472db8..00000000000 --- a/reactos/subsys/system/setup/makefile +++ /dev/null @@ -1,25 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = setup - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = kernel32.a userenv.a ntdll.a - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -D_WIN32_IE=0x0400 - -TARGET_LFLAGS = - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF \ No newline at end of file diff --git a/reactos/subsys/system/setup/setup.xml b/reactos/subsys/system/setup/setup.xml new file mode 100644 index 00000000000..8a919ca63cb --- /dev/null +++ b/reactos/subsys/system/setup/setup.xml @@ -0,0 +1,9 @@ + + . + + 0x0400 + kernel32 + userenv + setup.c + setup.rc + diff --git a/reactos/subsys/system/sm/makefile b/reactos/subsys/system/sm/makefile deleted file mode 100644 index 5a35b960927..00000000000 --- a/reactos/subsys/system/sm/makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ -# -# ReactOS Win32 SM Query Tool -# -PATH_TO_TOP = ../../.. -TOOLS_PATH = $(PATH_TO_TOP)/tools - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = sm - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -DANONYMOUSUNIONS -Wall -Werror - -TARGET_OBJECTS = $(TARGET_NAME).o - -TARGET_SDKLIBS = smdll.a ntdll.a - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -include $(TOOLS_PATH)/depend.mk - -# EOF diff --git a/reactos/subsys/system/sm/sm.xml b/reactos/subsys/system/sm/sm.xml new file mode 100644 index 00000000000..34a5fc4d4f2 --- /dev/null +++ b/reactos/subsys/system/sm/sm.xml @@ -0,0 +1,10 @@ + + . + + + smdll + ntdll + kernel32 + sm.c + sm.rc + diff --git a/reactos/subsys/system/taskmgr/makefile b/reactos/subsys/system/taskmgr/makefile deleted file mode 100644 index a2e3879fe77..00000000000 --- a/reactos/subsys/system/taskmgr/makefile +++ /dev/null @@ -1,49 +0,0 @@ -# -# ReactOS Task Manager -# -# Makefile -# - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = taskmgr - -TARGET_INSTALLDIR = system32 - -TARGET_PCH = precomp.h - -TARGET_CFLAGS = -Werror -Wall -DDBG -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -D__USE_W32API -DUNICODE -D_UNICODE - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a gdi32.a comctl32.a - -TARGET_OBJECTS = \ - about.o \ - affinity.o \ - applpage.o \ - column.o \ - dbgchnl.o \ - debug.o \ - endproc.o \ - font.o \ - graph.o \ - optnmenu.o \ - perfdata.o \ - perfpage.o \ - priority.o \ - procpage.o \ - proclist.o \ - run.o \ - trayicon.o \ - taskmgr.o \ - graphctl.o - - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/system/taskmgr/taskmgr.xml b/reactos/subsys/system/taskmgr/taskmgr.xml new file mode 100644 index 00000000000..ad03d8b9348 --- /dev/null +++ b/reactos/subsys/system/taskmgr/taskmgr.xml @@ -0,0 +1,32 @@ + + . + + 0x0501 + 0x0501 + ntdll + kernel32 + user32 + gdi32 + comctl32 + precomp.h + about.c + affinity.c + applpage.c + column.c + dbgchnl.c + debug.c + endproc.c + font.c + graph.c + optnmenu.c + perfdata.c + perfpage.c + priority.c + procpage.c + proclist.c + run.c + trayicon.c + taskmgr.c + graphctl.c + taskmgr.rc + diff --git a/reactos/subsys/system/userinit/Makefile b/reactos/subsys/system/userinit/Makefile deleted file mode 100644 index d0463ba2683..00000000000 --- a/reactos/subsys/system/userinit/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = userinit - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -DUNICODE -D_UNICODE - -TARGET_SDKLIBS = kernel32.a gdi32.a user32.a advapi32.a ntdll.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/userinit/userinit.xml b/reactos/subsys/system/userinit/userinit.xml new file mode 100644 index 00000000000..64408a363dd --- /dev/null +++ b/reactos/subsys/system/userinit/userinit.xml @@ -0,0 +1,13 @@ + + . + + + + ntdll + kernel32 + user32 + gdi32 + advapi32 + userinit.c + userinit.rc + diff --git a/reactos/subsys/system/usetup/makefile b/reactos/subsys/system/usetup/makefile deleted file mode 100644 index daa91584d4c..00000000000 --- a/reactos/subsys/system/usetup/makefile +++ /dev/null @@ -1,32 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_BOOTSTRAP = yes - -TARGET_BOOTSTRAP_NAME = smss.exe - -TARGET_TYPE = program - -TARGET_APPTYPE = native - -TARGET_NAME = usetup - -TARGET_PCH = precomp.h - -TARGET_SDKLIBS = zlib.a vfatlib.a ntdll.a - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__NTAPP__ -I$(PATH_TO_TOP)/lib/zlib -Wall -Werror -Wno-format - -TARGET_OBJECTS = bootsup.o cabinet.o console.o drivesup.o filequeue.o \ - filesup.o format.o fslist.o genlist.o infcache.o \ - inicache.o partlist.o progress.o registry.o settings.o \ - usetup.o keytrans.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# EOF diff --git a/reactos/subsys/system/usetup/usetup.xml b/reactos/subsys/system/usetup/usetup.xml new file mode 100644 index 00000000000..98a1a31ebe4 --- /dev/null +++ b/reactos/subsys/system/usetup/usetup.xml @@ -0,0 +1,29 @@ + + + . + . + + -lgcc + zlib + vfatlib + ntdll + precomp.h + bootsup.c + cabinet.c + console.c + drivesup.c + filequeue.c + filesup.c + format.c + fslist.c + genlist.c + infcache.c + inicache.c + keytrans.c + partlist.c + progress.c + registry.c + settings.c + usetup.c + usetup.rc + diff --git a/reactos/subsys/system/vmwinst/Makefile b/reactos/subsys/system/vmwinst/Makefile deleted file mode 100644 index b0563b429c4..00000000000 --- a/reactos/subsys/system/vmwinst/Makefile +++ /dev/null @@ -1,23 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = vmwinst - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -D__USE_W32API -DUNICODE -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 - -TARGET_SDKLIBS = kernel32.a ntdll.a - -TARGET_GCCLIBS = msvcrt advapi32 kernel32 comctl32 comdlg32 shell32 - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/vmwinst/vmwinst.xml b/reactos/subsys/system/vmwinst/vmwinst.xml new file mode 100644 index 00000000000..e32db2d39b7 --- /dev/null +++ b/reactos/subsys/system/vmwinst/vmwinst.xml @@ -0,0 +1,14 @@ + + . + + + 0x0501 + 0x0501 + kernel32 + advapi32 + comctl32 + comdlg32 + shell32 + vmwinst.c + vmwinst.rc + diff --git a/reactos/subsys/system/welcome/Makefile b/reactos/subsys/system/welcome/Makefile deleted file mode 100755 index 40fe3ca612a..00000000000 --- a/reactos/subsys/system/welcome/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = windows - -TARGET_NAME = welcome - -TARGET_INSTALLDIR = system32 - -TARGET_CFLAGS = -Wall -Werror -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -D__USE_W32API - -TARGET_SDKLIBS = kernel32.a gdi32.a user32.a - -TARGET_OBJECTS = $(TARGET_NAME).o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/subsys/system/welcome/welcome.xml b/reactos/subsys/system/welcome/welcome.xml new file mode 100644 index 00000000000..a2d20a2a8a0 --- /dev/null +++ b/reactos/subsys/system/welcome/welcome.xml @@ -0,0 +1,12 @@ + + + . + 0x0501 + 0x0501 + + kernel32 + gdi32 + user32 + welcome.c + welcome.rc + diff --git a/reactos/subsys/system/winefile/Makefile b/reactos/subsys/system/winefile/Makefile deleted file mode 100644 index ee30c23c7f4..00000000000 --- a/reactos/subsys/system/winefile/Makefile +++ /dev/null @@ -1,44 +0,0 @@ -# -# ReactOS winefile -# -# Makefile -# - -PATH_TO_TOP = ../../.. - -TARGET_NAME = winefile -TARGET_TYPE = program -TARGET_APPTYPE = windows -TARGET_INSTALLDIR := . - -TARGET_CFLAGS := \ - -D__USE_W32API -DWIN32 -D_ROS_ \ - -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 \ - -DUNICODE -Wall - -TARGET_CPPFLAGS := $(TARGET_CFLAGS) - -TARGET_RCFLAGS := -D__USE_W32API -DNDEBUG -DWIN32 -D_ROS_ -D__WINDRES__ -DUNICODE - -TARGET_SDKLIBS = \ - kernel32.a \ - user32.a \ - gdi32.a \ - comctl32.a \ - comdlg32.a \ - ole32.a \ - oleaut32.a \ - shell32.a \ - mpr.a - -TARGET_GCCLIBS := uuid - -TARGET_OBJECTS = \ - license.o \ - winefile.o - -DEP_OBJECTS := $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/rules.mak -include $(TOOLS_PATH)/helper.mk -include $(TOOLS_PATH)/depend.mk diff --git a/reactos/subsys/system/winefile/winefile.xml b/reactos/subsys/system/winefile/winefile.xml new file mode 100644 index 00000000000..7a987c89bf7 --- /dev/null +++ b/reactos/subsys/system/winefile/winefile.xml @@ -0,0 +1,22 @@ + + . + + + 0x0501 + 0x0501 + + uuid + ntdll + kernel32 + gdi32 + user32 + comctl32 + comdlg32 + shell32 + ole32 + oleaut32 + mpr + license.c + winefile.c + winefile.rc + diff --git a/reactos/subsys/system/winlogon/makefile b/reactos/subsys/system/winlogon/makefile deleted file mode 100644 index 80163b102de..00000000000 --- a/reactos/subsys/system/winlogon/makefile +++ /dev/null @@ -1,28 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../../.. - -TARGET_TYPE = program - -TARGET_APPTYPE = console - -TARGET_NAME = winlogon - -TARGET_INSTALLDIR = system32 - -TARGET_SDKLIBS = ntdll.a kernel32.a user32.a advapi32.a userenv.a secur32.a - -TARGET_OBJECTS = setup.o winlogon.o wlx.o sas.o - -TARGET_CFLAGS = -Wall -Werror -D__USE_W32API -DUNICODE -D_UNICODE -I./ - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) - -include $(PATH_TO_TOP)/tools/depend.mk - -# EOF diff --git a/reactos/subsys/system/winlogon/winlogon.xml b/reactos/subsys/system/winlogon/winlogon.xml new file mode 100644 index 00000000000..40ccf30f80e --- /dev/null +++ b/reactos/subsys/system/winlogon/winlogon.xml @@ -0,0 +1,17 @@ + + . + + + + ntdll + kernel32 + user32 + advapi32 + userenv + secur32 + sas.c + setup.c + winlogon.c + wlx.c + winlogon.rc + diff --git a/reactos/subsys/win32k/main/dllmain.c b/reactos/subsys/win32k/main/dllmain.c index d3c8d1d8853..0c57dec61f7 100644 --- a/reactos/subsys/win32k/main/dllmain.c +++ b/reactos/subsys/win32k/main/dllmain.c @@ -247,9 +247,8 @@ Win32kInitWin32Thread(PETHREAD Thread) /* * This definition doesn't work */ -// BOOL STDCALL DllMain(VOID) NTSTATUS STDCALL -DllMain ( +DriverEntry ( IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) { @@ -396,8 +395,6 @@ DllMain ( CreateStockObjects(); CreateSysColorObjects(); - PREPARE_TESTS - return STATUS_SUCCESS; } diff --git a/reactos/subsys/win32k/makefile b/reactos/subsys/win32k/makefile deleted file mode 100644 index f568085ee8a..00000000000 --- a/reactos/subsys/win32k/makefile +++ /dev/null @@ -1,128 +0,0 @@ -# $Id$ - -PATH_TO_TOP = ../.. - -TARGET_TYPE = subsystem - -TARGET_NAME = win32k - -TARGET_BASE = 0x0 - -TARGET_ENTRY = _DllMain@8 - -TARGET_PCH = w32k.h - -TARGET_DDKLIBS = freetype.a - -TARGET_LIBS = \ - $(SDK_PATH_LIB)/libpseh.a - -TARGET_REGTESTS = yes - -FREETYPE_DIR = $(PATH_TO_TOP)/lib/freetype - -include $(PATH_TO_TOP)/config - -ifeq ($(DBG), 1) -CFLAGS_DBG := -g -else -CFLAGS_DBG := -endif - -TARGET_CFLAGS =\ - $(CFLAGS_DBG) \ - -I. \ - -I$(PATH_TO_TOP)/ntoskrnl/include \ - -I$(FREETYPE_DIR)/include \ - -DUNICODE \ - -Wall -Werror \ - -D__USE_W32API -D_WIN32_WINNT=0x0501 \ - -DWINVER=0x600 -D_WIN32K_ \ - $(CFLAGS_OPT) - -TARGET_LFLAGS =\ - $(PATH_TO_TOP)/dk/nkm/lib/libfreetype.a \ - $(PATH_TO_TOP)/dk/w32/lib/librosrtl.a \ - --disable-stdcall-fixup - -ENG_OBJECTS= eng/debug.o eng/error.o eng/mem.o eng/brush.o eng/bitblt.o \ - eng/clip.o eng/copybits.o eng/device.o eng/lineto.o \ - eng/paint.o eng/palette.o eng/perfcnt.o eng/semaphor.o eng/surface.o \ - eng/xlate.o eng/transblt.o eng/mouse.o eng/misc.o eng/sort.o \ - eng/gradient.o eng/event.o eng/float.o eng/driverobj.o eng/window.o - -MAIN_OBJECTS = main/dllmain.o main/svctabm.o - -MISC_OBJECTS = misc/driver.o misc/error.o misc/math.o misc/object.o misc/ssec.o - -LDR_OBJECTS = ldr/loader.o - -NTUSER_OBJECTS = ntuser/accelerator.o ntuser/callback.o ntuser/caret.o ntuser/class.o \ - ntuser/clipboard.o ntuser/csr.o ntuser/cursoricon.o ntuser/focus.o ntuser/desktop.o \ - ntuser/guicheck.o ntuser/hook.o ntuser/hotkey.o ntuser/input.o \ - ntuser/keyboard.o ntuser/menu.o ntuser/message.o ntuser/metric.o \ - ntuser/misc.o ntuser/monitor.o ntuser/msgqueue.o ntuser/painting.o \ - ntuser/prop.o ntuser/scrollbar.o ntuser/stubs.o ntuser/timer.o \ - ntuser/useratom.o ntuser/vis.o ntuser/windc.o ntuser/window.o \ - ntuser/winpos.o ntuser/winsta.o - -OBJECTS_OBJECTS = objects/bitmaps.o objects/brush.o objects/cliprgn.o \ - objects/color.o objects/coord.o \ - objects/dc.o objects/fillshap.o objects/gdiobj.o \ - objects/icm.o objects/line.o objects/metafile.o objects/paint.o \ - objects/path.o objects/pen.o objects/print.o \ - objects/region.o objects/text.o objects/wingl.o \ - objects/bezier.o objects/dib.o objects/palette.o \ - objects/rect.o objects/polyfill.o objects/stockobj.o - -DIB_OBJECTS = dib/dib.o dib/dib1bpp.o dib/dib4bpp.o dib/dib8bpp.o dib/dib16bpp.o \ - dib/dib24bpp.o dib/dib32bpp.o - -STUBS_OBJECTS = stubs/stubs.o stubs/xpstubs.o - -NTDDRAW_OBJECTS = ntddraw/stubs.o ntddraw/ddraw.o - -TARGET_OBJECTS = \ - $(ENG_OBJECTS) $(MAIN_OBJECTS) $(MISC_OBJECTS) $(LDR_OBJECTS) \ - $(NTUSER_OBJECTS) $(OBJECTS_OBJECTS) $(STUBS_OBJECTS) \ - $(MATH_OBJECTS) $(FLOAT_OBJECTS) $(DIB_OBJECTS) $(NTDDRAW_OBJECTS) - -TARGET_CLEAN = $(DEP_FILES) \ - dib/*.o \ - eng/*.o \ - ldr/*.o \ - main/*.o \ - misc/*.o \ - ntuser/*.o \ - objects/*.o \ - ntddraw/*.o \ - stubs/*.o - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk - -# Automatic dependency tracking -DEP_OBJECTS := $(TARGET_OBJECTS) -DEP_EXCLUDE_FILTER := main/svctabm.d -include $(PATH_TO_TOP)/tools/depend.mk - -main/svctabm.o: main/svctab.c - -.dummy: - -%/TAGS: .dummy - etags $(@D)/\*.c -o $(@D)/TAGS - -etags: TAGS -TAGS: main/TAGS eng/TAGS ldr/TAGS misc/TAGS objects/TAGS stubs/TAGS ntuser/TAGS dib/TAGS ntddraw/TAGS - etags -i main/TAGS -i eng/TAGS -i ldr/TAGS -i misc/TAGS -i objects/TAGS -i stubs/TAGS -i ntuser/TAGS -i dib/TAGS -i ntddraw/TAGS - - -docu: - doxygen Doxyfile - -.PHONY: docu - - -# EOF diff --git a/reactos/subsys/win32k/objects/font.c b/reactos/subsys/win32k/objects/font.c index ee683355a7c..dd31a49f10a 100644 --- a/reactos/subsys/win32k/objects/font.c +++ b/reactos/subsys/win32k/objects/font.c @@ -1,2 +1,2 @@ /* EMPTY FOR NOW */ -/* Hope I didn't delete existing defs!! Check CVS version of this file.. */ \ No newline at end of file +/* Hope I didn't delete existing defs!! Check CVS version of this file.. */ diff --git a/reactos/subsys/win32k/win32k.xml b/reactos/subsys/win32k/win32k.xml new file mode 100644 index 00000000000..e2ea06c63dd --- /dev/null +++ b/reactos/subsys/win32k/win32k.xml @@ -0,0 +1,136 @@ + + + . + include + include + include + + + 0x0501 + 0x600 + + pseh + rosrtl + ntoskrnl + hal + freetype + w32k.h + + dib1bpp.c + dib4bpp.c + dib8bpp.c + dib16bpp.c + dib24bpp.c + dib32bpp.c + dib.c + + + bitblt.c + brush.c + clip.c + copybits.c + debug.c + device.c + driverobj.c + error.c + event.c + float.c + gradient.c + lineto.c + mem.c + misc.c + mouse.c + paint.c + palette.c + perfcnt.c + semaphor.c + sort.c + surface.c + transblt.c + window.c + xlate.c + + + loader.c + + + dllmain.c + svctabm.c + + + driver.c + error.c + math.c + object.c + ssec.c + + + ddraw.c + stubs.c + + + accelerator.c + callback.c + caret.c + class.c + clipboard.c + csr.c + cursoricon.c + desktop.c + focus.c + guicheck.c + hook.c + hotkey.c + input.c + keyboard.c + menu.c + message.c + metric.c + misc.c + monitor.c + msgqueue.c + painting.c + prop.c + scrollbar.c + stubs.c + timer.c + useratom.c + vis.c + windc.c + window.c + winpos.c + winsta.c + + + bezier.c + bitmaps.c + brush.c + cliprgn.c + color.c + coord.c + dc.c + dib.c + fillshap.c + font.c + gdiobj.c + icm.c + line.c + metafile.c + paint.c + palette.c + path.c + pen.c + polyfill.c + print.c + rect.c + region.c + stockobj.c + text.c + wingl.c + + + stubs.c + xpstubs.c + + win32k.rc + diff --git a/reactos/tools/Makefile b/reactos/tools/Makefile deleted file mode 100644 index cf71bc8a366..00000000000 --- a/reactos/tools/Makefile +++ /dev/null @@ -1,162 +0,0 @@ -PATH_TO_TOP = .. - -include $(PATH_TO_TOP)/rules.mak - -CFLAGS += -Wall -Werror -ifeq ($(HOST_TYPE),unix) -CFLAGS += -DUNIX_PATHS -rm := @rm -else -CFLAGS += -DDOS_PATHS -rm := -@del -endif - -TOOLS = \ - regtests$(EXE_POSTFIX) \ - rcopy$(EXE_POSTFIX) \ - rdel$(EXE_POSTFIX) \ - rline$(EXE_POSTFIX) \ - rmkdir$(EXE_POSTFIX) \ - rrmdir$(EXE_POSTFIX) \ - rsym$(EXE_POSTFIX) \ - raddr2line$(EXE_POSTFIX) \ - rtouch$(EXE_POSTFIX) \ - mkflpimg$(EXE_POSTFIX) \ - ppc-le2be$(EXE_POSTFIX) \ - hack-coff$(EXE_POSTFIX) \ - depends$(EXE_POSTFIX) - -LIBS = lib_unicode lib_wpp - -CLEAN_FILES = $(TOOLS) tools-check.tmp tools-check.h - -all: $(TOOLS) tools_check $(LIBS) zlib_target wmc_target cabman_target cdmake_target mkhive_target rgenstat_target \ - wine2ros_target pipetools_target winebuild_target bin2res_target wrc_target widl_target \ - buildno_target - -tools_check: - $(MAKE) -f tools-check.mak - -regtests$(EXE_POSTFIX): regtests.c - @$(HOST_CC) $(CFLAGS) -o $@ $< - -rcopy$(EXE_POSTFIX): rcopy.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -rdel$(EXE_POSTFIX): rdel.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -rline$(EXE_POSTFIX): rline.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -rmkdir$(EXE_POSTFIX): rmkdir.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -rrmdir$(EXE_POSTFIX): rrmdir.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -rsym_common.o: rsym_common.c rsym.h - @$(HOST_CC) $(CFLAGS) -c $< -o $@ - -rsym.o: rsym.c rsym.h - @$(HOST_CC) $(CFLAGS) -c $< -o $@ - -rsym$(EXE_POSTFIX): rsym.o rsym_common.o - @$(HOST_CC) $(CFLAGS) $^ -o $@ - -raddr2line.o: raddr2line.c rsym.h - @$(HOST_CC) $(CFLAGS) -c $< -o $@ - -raddr2line$(EXE_POSTFIX): raddr2line.o rsym_common.o - @$(HOST_CC) $(CFLAGS) $^ -o $@ - -rtouch$(EXE_POSTFIX): rtouch.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -mkflpimg$(EXE_POSTFIX): mkflpimg.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -hack-coff$(EXE_POSTFIX): hack-coff.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -ppc-le2be$(EXE_POSTFIX): ppc-le2be.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -depends$(EXE_POSTFIX): depends.c - @$(HOST_CC) $(CFLAGS) $< -o $@ - -.PHONY: zlib_target wmc_target cdmake_target mkhive_target rgenstat_target pipetools_target wrc_target \ - widl_target buildno_target lib_unicode lib_wpp - -zlib_target: - $(MAKE) --silent -C ../lib/zlib -f Makefile.host - -wmc_target: - $(MAKE) --silent -C wmc wmc$(EXE_POSTFIX) - -cabman_target: - $(MAKE) --silent -C cabman cabman$(EXE_POSTFIX) - -cdmake_target: - $(MAKE) --silent -C cdmake cdmake$(EXE_POSTFIX) - -mkhive_target: - $(MAKE) --silent -C mkhive mkhive$(EXE_POSTFIX) - -rgenstat_target: - $(MAKE) --silent -C rgenstat rgenstat$(EXE_POSTFIX) - -wine2ros_target: - $(MAKE) --silent -C wine2ros wine2ros$(EXE_POSTFIX) - -pipetools_target: -ifeq ($(HOST),mingw32-windows) - $(MAKE) --silent -C pipetools -endif - -winebuild_target: - $(MAKE) --silent -C winebuild winebuild$(EXE_POSTFIX) - -bin2res_target: - $(MAKE) --silent -C bin2res bin2res$(EXE_POSTFIX) - -wrc_target: $(LIBS) - $(MAKE) --silent -C wrc wrc$(EXE_POSTFIX) - -widl_target: lib_wpp - $(MAKE) --silent -C widl widl$(EXE_POSTFIX) - -buildno_target: - $(MAKE) --silent -C buildno buildno$(EXE_POSTFIX) - -lib_unicode: - $(MAKE) -C unicode - -lib_wpp: - $(MAKE) -C wpp - - -clean: - $(MAKE) --silent -C buildno clean - $(MAKE) --silent -C widl clean - $(MAKE) --silent -C wrc clean - $(MAKE) --silent -C cabman clean - $(MAKE) --silent -C cdmake clean - $(MAKE) --silent -C mkhive clean - $(MAKE) --silent -C wmc clean - $(MAKE) --silent -C rgenstat clean - $(MAKE) --silent -C wine2ros clean - $(MAKE) --silent -C winebuild clean - $(MAKE) --silent -C bin2res clean - $(MAKE) --silent -C ../lib/zlib -f Makefile.host clean - $(MAKE) -C wpp clean - $(MAKE) -C unicode clean -ifeq ($(HOST_TYPE),unix) - @rm mkconfig - @rm $(TOOLS) -else - $(MAKE) --silent -C pipetools clean - $(rm) *$(EXE_POSTFIX) -endif - -.PHONY: all clean diff --git a/reactos/tools/bin2res/Makefile b/reactos/tools/bin2res/Makefile deleted file mode 100644 index 4ff8c86eb83..00000000000 --- a/reactos/tools/bin2res/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -PATH_TO_TOP = ../.. - -TARGET = bin2res$(EXE_POSTFIX) - -all: $(TARGET) - -OBJECTS = bin2res.o mkstemps.o - -CLEAN_FILES = *.o bin2res$(EXE_POSTFIX) - -HOST_CFLAGS = -I$(PATH_TO_TOP)/include/wine -D__REACTOS__ -Wall -Werror - -bin2res.o: bin2res.c - $(HOST_CC) -g $(HOST_CFLAGS) -c bin2res.c -o bin2res.o - -mkstemps.o: mkstemps.c - $(HOST_CC) -g $(HOST_CFLAGS) -c mkstemps.c -o mkstemps.o - -bin2res$(EXE_POSTFIX): $(OBJECTS) - $(HOST_CC) -g $(OBJECTS) -o $(TARGET) - -ifeq ($(HOST_TYPE),unix) -clean: - rm -f *.o $(TARGET) -else -clean: - del *.o $(TARGET) -endif - -.PHONY: clean - -include $(PATH_TO_TOP)/rules.mak diff --git a/reactos/tools/bin2res/bin2res.c b/reactos/tools/bin2res/bin2res.c index 2353a80c8d4..25dcc051107 100644 --- a/reactos/tools/bin2res/bin2res.c +++ b/reactos/tools/bin2res/bin2res.c @@ -35,14 +35,25 @@ # include #endif +#if defined(WIN32) +#define DIR_SEPARATOR "\\" +#else +#define DIR_SEPARATOR "/" +#endif + extern int mkstemps(char *template, int suffix_len); +int process_resources(const char* input_file_name, const char* specific_file_name, + const char* relative_path, + int inserting, int force_processing, int verbose); + static const char* help = "Usage: bin2res [OPTIONS] \n" " -a archive binaries into the file\n" " -x extract binaries from the file\n" " -i archive the named file into the file\n" " -o extract the named file from the file\n" + " -b assume resources are relative to this base path\n" " -f force processing of older resources\n" " -v causes the command to be verbous during processing\n" " -h print this help screen and exit\n" @@ -127,9 +138,62 @@ const char* parse_marker(const char *line, time_t* last_updated) return res_file_name; } +const char* parse_include(const char *line) +{ + static char include_filename[PATH_MAX], *rpos, *wpos; + + if (!(rpos = strstr(line, "#"))) return 0; + for (rpos += 1; *rpos && isspace(*rpos); rpos++) /**/; + if (!(rpos = strstr(line, "include"))) return 0; + for (rpos += 7; *rpos && isspace(*rpos); rpos++) /**/; + for (; *rpos && (*rpos == '"' || *rpos == '<'); rpos++) /**/; + for (wpos = include_filename; *rpos && !(*rpos == '"' || *rpos == '<'); ) *wpos++ = *rpos++; + if (!(rpos = strstr(include_filename, ".rc"))) return 0; + *wpos = 0; + + return include_filename; +} + +char* get_filename_with_full_path(char* output, const char* filename, const char* relative_path) +{ + if (relative_path != NULL && relative_path[0] != 0) + { + strcpy(output, relative_path); + strcat(output, DIR_SEPARATOR); + strcat(output, filename); + } + else + strcpy(output, filename); + return output; +} + +void process_includes(const char* input_file_name, const char* specific_file_name, + const char* relative_path, + int inserting, int force_processing, int verbose) +{ + char filename[PATH_MAX]; + char buffer[2048]; + const char *include_file_name; + FILE *fin; + int c; + + if (!(fin = fopen(input_file_name, "r"))) return; + for (c = EOF; fgets(buffer, sizeof(buffer), fin); c = EOF) + { + if (!(include_file_name = parse_include(buffer))) continue; + if ( verbose ) printf ( "Processing included file %s\n", include_file_name); + process_resources(get_filename_with_full_path(filename, include_file_name, relative_path), + specific_file_name, relative_path, + inserting, force_processing, verbose); + } + fclose(fin); +} + int process_resources(const char* input_file_name, const char* specific_file_name, + const char* relative_path, int inserting, int force_processing, int verbose) { + char filename[PATH_MAX]; char buffer[2048], tmp_file_name[PATH_MAX]; const char *res_file_name; time_t rc_last_update, res_last_update; @@ -169,7 +233,8 @@ int process_resources(const char* input_file_name, const char* specific_file_nam if (inserting) fputc(c, ftmp); if (c == EOF) break; - if (!(fres = fopen(res_file_name, inserting ? "rb" : "wb"))) break; + if (!(fres = fopen(get_filename_with_full_path(filename, res_file_name, relative_path), + inserting ? "rb" : "wb"))) break; if (inserting) { if (!insert_hexdump(ftmp, fres)) break; @@ -201,6 +266,11 @@ int process_resources(const char* input_file_name, const char* specific_file_nam } else unlink(tmp_file_name); } + else + { + process_includes(input_file_name, specific_file_name, relative_path, + inserting, force_processing, verbose); + } return c == EOF; } @@ -211,8 +281,9 @@ int main(int argc, char **argv) int force_overwrite = 0, verbose = 0; const char* input_file_name = 0; const char* specific_file_name = 0; + const char* relative_path = 0; - while((optc = getopt(argc, argv, "axi:o:fhv")) != EOF) + while((optc = getopt(argc, argv, "axi:o:b:fhv")) != EOF) { switch(optc) { @@ -229,6 +300,10 @@ int main(int argc, char **argv) if (convert_dir && convert_dir != optc) usage(); convert_dir = optc; break; + case 'b': + if (relative_path) usage(); + relative_path = optarg; + break; case 'f': force_overwrite = 1; break; @@ -249,7 +324,7 @@ int main(int argc, char **argv) if (!convert_dir) usage(); - if (!process_resources(input_file_name, specific_file_name, + if (!process_resources(input_file_name, specific_file_name, relative_path, convert_dir == 'a', force_overwrite, verbose)) { perror("Processing failed"); diff --git a/reactos/tools/bin2res/bin2res.mak b/reactos/tools/bin2res/bin2res.mak new file mode 100644 index 00000000000..3d9dad21eab --- /dev/null +++ b/reactos/tools/bin2res/bin2res.mak @@ -0,0 +1,51 @@ +BIN2RES_BASE = $(TOOLS_BASE_)bin2res +BIN2RES_BASE_ = $(BIN2RES_BASE)$(SEP) +BIN2RES_INT = $(INTERMEDIATE_)$(BIN2RES_BASE) +BIN2RES_INT_ = $(BIN2RES_INT)$(SEP) +BIN2RES_OUT = $(OUTPUT_)$(BIN2RES_BASE) +BIN2RES_OUT_ = $(BIN2RES_OUT)$(SEP) + +$(BIN2RES_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(BIN2RES_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +BIN2RES_TARGET = \ + $(EXEPREFIX)$(BIN2RES_OUT_)bin2res$(EXEPOSTFIX) + +BIN2RES_SOURCES = $(addprefix $(BIN2RES_BASE_), \ + bin2res.c \ + mkstemps.c \ + ) + +BIN2RES_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(BIN2RES_SOURCES:.c=.o)) + +BIN2RES_HOST_CFLAGS = -Iinclude/wine -D__REACTOS__ -g -Werror -Wall + +BIN2RES_HOST_LFLAGS = -g + +$(BIN2RES_TARGET): $(BIN2RES_OBJECTS) | $(BIN2RES_OUT) + $(ECHO_LD) + ${host_gcc} $(BIN2RES_OBJECTS) $(BIN2RES_HOST_LFLAGS) -o $@ + +$(BIN2RES_INT_)bin2res.o: $(BIN2RES_BASE_)bin2res.c | $(BIN2RES_INT) + $(ECHO_CC) + ${host_gcc} $(BIN2RES_HOST_CFLAGS) -c $< -o $@ + +$(BIN2RES_INT_)mkstemps.o: $(BIN2RES_BASE_)mkstemps.c | $(BIN2RES_INT) + $(ECHO_CC) + ${host_gcc} $(BIN2RES_HOST_CFLAGS) -c $< -o $@ + +.PHONY: bin2res +bin2res: $(BIN2RES_TARGET) + +.PHONY: bin2res_clean +bin2res_clean: $(BIN2RES_TARGET) + -@$(rm) $(BIN2RES_TARGET) $(BIN2RES_OBJECTS) 2>$(NUL) +clean: bin2res_clean diff --git a/reactos/tools/buildno/buildno.cpp b/reactos/tools/buildno/buildno.cpp index 5086791a4d6..f370b4cc19c 100644 --- a/reactos/tools/buildno/buildno.cpp +++ b/reactos/tools/buildno/buildno.cpp @@ -34,10 +34,8 @@ #define FALSE 0 #define TRUE 1 -/* File to (over)write */ -#define BUILDNO_INCLUDE_FILE "../../include/reactos/buildno.h" - static char * argv0 = ""; +static char * filename = ""; #ifdef DBG void @@ -61,7 +59,7 @@ write_h (int build, char *buildstr) FILE *h = NULL; char* s; char* s1; - unsigned length; + unsigned int length; int dllversion = KERNEL_VERSION_MAJOR + 42; s1 = s = (char *) malloc(256 * 1024); @@ -139,7 +137,7 @@ write_h (int build, char *buildstr) s = s + sprintf (s, "-%S\"\n", KERNEL_VERSION_BUILD_TYPE); s = s + sprintf (s, "#endif\n/* EOF */\n"); - h = fopen (BUILDNO_INCLUDE_FILE, "rb"); + h = fopen (filename, "wb"); if (h != NULL) { fseek(h, 0, SEEK_END); @@ -160,13 +158,13 @@ write_h (int build, char *buildstr) fclose(h); } - h = fopen (BUILDNO_INCLUDE_FILE, "wb"); + h = fopen (filename, "wb"); if (!h) { fprintf (stderr, "%s: can not create file \"%s\"!\n", argv0, - BUILDNO_INCLUDE_FILE); + filename); return; } fwrite(s1, 1, strlen(s1), h); @@ -249,7 +247,7 @@ usage (void) { fprintf ( stderr, - "Usage: %s [-{p|q}]\n\n -p print version number and exit\n -q run in quiet mode\n", + "Usage: %s [-{p|q}] path-to-header\n\n -p print version number and exit\n -q run in quiet mode\n", argv0 ); exit (EXIT_SUCCESS); @@ -275,6 +273,7 @@ main (int argc, char * argv []) case 1: break; case 2: + case 3: if (argv[1][0] == '-') { if (argv[1][1] == 'q') @@ -289,6 +288,11 @@ main (int argc, char * argv []) { usage (); } + filename = argv[2]; + } + else if (argc == 2) + { + filename = argv[1]; } else { diff --git a/reactos/tools/buildno/buildno.mak b/reactos/tools/buildno/buildno.mak new file mode 100644 index 00000000000..1e4c36b80c4 --- /dev/null +++ b/reactos/tools/buildno/buildno.mak @@ -0,0 +1,62 @@ +BUILDNO_BASE = $(TOOLS_BASE_)buildno +BUILDNO_BASE_ = $(BUILDNO_BASE)$(SEP) +BUILDNO_INT = $(INTERMEDIATE_)$(BUILDNO_BASE) +BUILDNO_INT_ = $(BUILDNO_INT)$(SEP) +BUILDNO_OUT = $(OUTPUT_)$(BUILDNO_BASE) +BUILDNO_OUT_ = $(BUILDNO_OUT)$(SEP) + +$(BUILDNO_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(BUILDNO_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +BUILDNO_TARGET = \ + $(EXEPREFIX)$(BUILDNO_OUT_)buildno$(EXEPOSTFIX) + +BUILDNO_SOURCES = $(addprefix $(BUILDNO_BASE_), \ + buildno.cpp \ + exception.cpp \ + ssprintf.cpp \ + XML.cpp \ + ) + +BUILDNO_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(BUILDNO_SOURCES:.cpp=.o)) + +BUILDNO_HOST_CFLAGS = -Iinclude/reactos -g -Werror -Wall + +BUILDNO_HOST_LFLAGS = -g + +$(BUILDNO_TARGET): $(BUILDNO_OBJECTS) | $(BUILDNO_OUT) + $(ECHO_LD) + ${host_gpp} $(BUILDNO_OBJECTS) $(BUILDNO_HOST_LFLAGS) -o $@ + +$(BUILDNO_INT_)buildno.o: $(BUILDNO_BASE_)buildno.cpp | $(BUILDNO_INT) + $(ECHO_CC) + ${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@ + +$(BUILDNO_INT_)exception.o: $(BUILDNO_BASE_)exception.cpp | $(BUILDNO_INT) + $(ECHO_CC) + ${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@ + +$(BUILDNO_INT_)ssprintf.o: $(BUILDNO_BASE_)ssprintf.cpp | $(BUILDNO_INT) + $(ECHO_CC) + ${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@ + +$(BUILDNO_INT_)XML.o: $(BUILDNO_BASE_)XML.cpp | $(BUILDNO_INT) + $(ECHO_CC) + ${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@ + +.PHONY: buildno_clean +buildno_clean: + -@$(rm) $(BUILDNO_TARGET) $(BUILDNO_OBJECTS) 2>$(NUL) +clean: buildno_clean + +$(BUILDNO_H): $(BUILDNO_TARGET) + $(ECHO_BUILDNO) + $(Q)$(BUILDNO_TARGET) $(BUILDNO_QUIET) $(BUILDNO_H) diff --git a/reactos/tools/cabman/cabinet.cxx b/reactos/tools/cabman/cabinet.cxx index c55a761d40b..63e658aa83a 100755 --- a/reactos/tools/cabman/cabinet.cxx +++ b/reactos/tools/cabman/cabinet.cxx @@ -34,7 +34,7 @@ static long _GetSizeOfFile(FILEHANDLE handle) #define ReadFileData(handle, buffer, size, bytesread) _ReadFileData(handle, buffer, size, bytesread) static bool _ReadFileData(FILEHANDLE handle, void* buffer, unsigned long size, unsigned long* bytesread) { - return ReadFile(handle, buffer, size, bytesread, NULL); + return ReadFile(handle, buffer, size, bytesread, NULL) != 0; } #else #define GetSizeOfFile(handle) _GetSizeOfFile(handle) @@ -70,7 +70,7 @@ void DumpBuffer(void* Buffer, unsigned long Size) 0, // No sharing NULL, // No security CREATE_ALWAYS, // Create or overwrite - FILE_ATTRIBUTE_NORMAL, // Normal file + FILE_ATTRIBUTE_NORMAL, // Normal file NULL); // No attribute template if (FileHandle == INVALID_HANDLE_VALUE) { DPRINT(MID_TRACE, ("ERROR OPENING '%d'.\n", (unsigned int)GetLastError())); @@ -143,7 +143,7 @@ unsigned long CCFDATAStorage::Create(char* FileName) if ((FileHandle = tmpfile()) == NULL) return CAB_STATUS_CANNOT_CREATE; /* - FileHandle = fopen(FullName, "w+b"); + FileHandle = fopen(FullName, "w+b"); if (FileHandle == NULL) { DPRINT(MID_TRACE, ("ERROR '%d'.\n", (unsigned int)errno)); return CAB_STATUS_CANNOT_CREATE; @@ -297,9 +297,15 @@ CCabinet::CCabinet() * FUNCTION: Default constructor */ { + *CabinetName = '\0'; + *CabinetPrev = '\0'; + *DiskPrev = '\0'; + *CabinetNext = '\0'; + *DiskNext = '\0'; + *DestPath = '\0'; + *CabinetReservedFile = '\0'; + FileOpen = false; - strcpy(DestPath, ""); - strcpy(CabinetReservedFile, ""); CabinetReservedFileBuffer = NULL; CabinetReservedFileSize = 0; @@ -521,19 +527,18 @@ bool CCabinet::SetCabinetReservedFile(char* FileName) #if defined(WIN32) FileHandle = CreateFile(ConvertPath(FileName, true), // Open this file - GENERIC_READ, // Open for reading - FILE_SHARE_READ, // Share for reading - NULL, // No security - OPEN_EXISTING, // Existing file only - FILE_ATTRIBUTE_NORMAL, // Normal file - NULL); // No attribute template + GENERIC_READ, // Open for reading + FILE_SHARE_READ, // Share for reading + NULL, // No security + OPEN_EXISTING, // Existing file only + FILE_ATTRIBUTE_NORMAL, // Normal file + NULL); // No attribute template if (FileHandle == INVALID_HANDLE_VALUE) { DPRINT(MID_TRACE, ("Cannot open cabinet reserved file.\n")); return false; } #else /* !WIN32 */ - - FileHandle = fopen(ConvertPath(FileName, true), "rb"); + FileHandle = fopen(ConvertPath(FileName, true), "rb"); if (FileHandle == NULL) { DPRINT(MID_TRACE, ("Cannot open cabinet reserved file.\n")); return false; @@ -614,19 +619,19 @@ unsigned long CCabinet::Open() #if defined(WIN32) FileHandle = CreateFile(CabinetName, // Open this file - GENERIC_READ, // Open for reading - FILE_SHARE_READ, // Share for reading - NULL, // No security - OPEN_EXISTING, // Existing file only - FILE_ATTRIBUTE_NORMAL, // Normal file - NULL); // No attribute template - + GENERIC_READ, // Open for reading + FILE_SHARE_READ, // Share for reading + NULL, // No security + OPEN_EXISTING, // Existing file only + FILE_ATTRIBUTE_NORMAL, // Normal file + NULL); // No attribute template + if (FileHandle == INVALID_HANDLE_VALUE) { DPRINT(MID_TRACE, ("Cannot open file.\n")); return CAB_STATUS_CANNOT_OPEN; } #else /* !WIN32 */ - FileHandle = fopen(CabinetName, "rb"); + FileHandle = fopen(CabinetName, "rb"); if (FileHandle == NULL) { DPRINT(MID_TRACE, ("Cannot open file.\n")); return CAB_STATUS_CANNOT_OPEN; @@ -694,7 +699,7 @@ unsigned long CCabinet::Open() strcpy(CabinetPrev, ""); strcpy(DiskPrev, ""); } - + if ((CABHeader.Flags & CAB_FLAG_HASNEXT) > 0) { /* Read name of next cabinet */ Status = ReadString(CabinetNext, 256); @@ -818,7 +823,7 @@ unsigned long CCabinet::FindNext(PCAB_SEARCH Search) OnDiskChange(CabinetNext, DiskNext); Status = Open(); - if (Status != CAB_STATUS_SUCCESS) + if (Status != CAB_STATUS_SUCCESS) return Status; Search->Next = FileListHead; @@ -925,7 +930,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) } } #else /* !WIN32 */ - DestFile = fopen(DestName, "rb"); + DestFile = fopen(DestName, "rb"); if (DestFile != NULL) { fclose(DestFile); /* If file exists, ask to overwrite file */ @@ -961,7 +966,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) if (!Buffer) { CloseFile(DestFile); DPRINT(MIN_TRACE, ("Insufficient memory.\n")); - return CAB_STATUS_NOMEMORY; + return CAB_STATUS_NOMEMORY; } /* Call OnExtract event handler */ @@ -1007,7 +1012,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) do { DPRINT(MAX_TRACE, ("Size (%lu bytes).\n", Size)); - if (((Status = ReadBlock(&CFData, sizeof(CFDATA), &BytesRead)) != + if (((Status = ReadBlock(&CFData, sizeof(CFDATA), &BytesRead)) != CAB_STATUS_SUCCESS) || (BytesRead != sizeof(CFDATA))) { CloseFile(DestFile); FreeMemory(Buffer); @@ -1027,7 +1032,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) DPRINT(MAX_TRACE, ("Read: (0x%lX,0x%lX).\n", (long unsigned int)CurrentBuffer, (long unsigned int)Buffer)); - if (((Status = ReadBlock(CurrentBuffer, BytesToRead, &BytesRead)) != + if (((Status = ReadBlock(CurrentBuffer, BytesToRead, &BytesRead)) != CAB_STATUS_SUCCESS) || (BytesToRead != BytesRead)) { CloseFile(DestFile); FreeMemory(Buffer); @@ -1068,7 +1073,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) OnDiskChange(CabinetNext, DiskNext); Status = Open(); - if (Status != CAB_STATUS_SUCCESS) + if (Status != CAB_STATUS_SUCCESS) return Status; /* The first data block of the file will not be @@ -1140,7 +1145,7 @@ unsigned long CCabinet::ExtractFile(char* FileName) CurrentDataNode->AbsoluteOffset + sizeof(CFDATA) + CurrentDataNode->Data.CompSize)); - if (((Status = ReadBlock(&CFData, sizeof(CFDATA), &BytesRead)) != + if (((Status = ReadBlock(&CFData, sizeof(CFDATA), &BytesRead)) != CAB_STATUS_SUCCESS) || (BytesRead != sizeof(CFDATA))) { CloseFile(DestFile); FreeMemory(Buffer); @@ -1274,7 +1279,7 @@ unsigned long CCabinet::NewCabinet() InputBuffer = AllocateMemory(CAB_BLOCKSIZE + 12); // This should be enough if ((!OutputBuffer) || (!InputBuffer)) { DPRINT(MIN_TRACE, ("Insufficient memory.\n")); - return CAB_STATUS_NOMEMORY; + return CAB_STATUS_NOMEMORY; } CurrentIBuffer = InputBuffer; CurrentIBufferSize = 0; @@ -1417,14 +1422,14 @@ unsigned long CCabinet::WriteFileToScratchStorage(PCFFILE_NODE FileNode) FILE_SHARE_READ, // Share for reading NULL, // No security OPEN_EXISTING, // File must exist - FILE_ATTRIBUTE_NORMAL, // Normal file + FILE_ATTRIBUTE_NORMAL, // Normal file NULL); // No attribute template if (SourceFile == INVALID_HANDLE_VALUE) { DPRINT(MID_TRACE, ("File not found (%s).\n", FileNode->FileName)); return CAB_STATUS_NOFILE; } #else /* !WIN32 */ - SourceFile = fopen(FileNode->FileName, "rb"); + SourceFile = fopen(FileNode->FileName, "rb"); if (SourceFile == NULL) { DPRINT(MID_TRACE, ("Cannot open cabinet reserved file.\n")); return CAB_STATUS_NOFILE; @@ -1447,7 +1452,7 @@ unsigned long CCabinet::WriteFileToScratchStorage(PCFFILE_NODE FileNode) FileNode->File.FileOffset = CurrentFolderNode->UncompOffset; CurrentFolderNode->UncompOffset += TotalBytesLeft; - FileNode->File.FileControlID = NextFolderNumber - 1; + FileNode->File.FileControlID = (unsigned short)(NextFolderNumber - 1); CurrentFolderNode->Commit = true; PrevCabinetNumber = CurrentDiskNumber; @@ -1543,7 +1548,7 @@ unsigned long CCabinet::WriteDisk(unsigned long MoreDisks) ContinueFile = true; CreateNewDisk = false; - DPRINT(MAX_TRACE, ("First on new disk. CurrentIBufferSize (%lu) CurrentOBufferSize (%lu).\n", + DPRINT(MAX_TRACE, ("First on new disk. CurrentIBufferSize (%lu) CurrentOBufferSize (%lu).\n", CurrentIBufferSize, CurrentOBufferSize)); if ((CurrentIBufferSize > 0) || (CurrentOBufferSize > 0)) { @@ -1635,7 +1640,7 @@ unsigned long CCabinet::CommitDisk(unsigned long MoreDisks) } } #else /* !WIN32 */ - FileHandle = fopen(CabinetName, "rb"); + FileHandle = fopen(CabinetName, "rb"); if (FileHandle != NULL) { fclose(FileHandle); /* If file exists, ask to overwrite file */ @@ -1655,7 +1660,7 @@ unsigned long CCabinet::CommitDisk(unsigned long MoreDisks) } #endif - WriteCabinetHeader(MoreDisks); + WriteCabinetHeader(MoreDisks != 0); Status = WriteFolderEntries(); if (Status != CAB_STATUS_SUCCESS) @@ -1749,45 +1754,55 @@ unsigned long CCabinet::AddFile(char* FileName) { FILEHANDLE SrcFile; PCFFILE_NODE FileNode; + char* NewFileName; - FileNode = NewFileNode(); - if (!FileNode) { + NewFileName = (char*)AllocateMemory(strlen(FileName) + 1); + if (!NewFileName) { DPRINT(MIN_TRACE, ("Insufficient memory.\n")); return CAB_STATUS_NOMEMORY; } - - FileNode->FolderNode = CurrentFolderNode; - - FileNode->FileName = (char*)AllocateMemory(strlen(FileName) + 1); - strcpy(FileNode->FileName, FileName); - ConvertPath(FileNode->FileName, false); + strcpy(NewFileName, FileName); + ConvertPath(NewFileName, false); /* Try to open file */ #if defined(WIN32) SrcFile = CreateFile( - FileNode->FileName, // Open this file + NewFileName, // Open this file GENERIC_READ, // Open for reading FILE_SHARE_READ, // Share for reading NULL, // No security OPEN_EXISTING, // File must exist - FILE_ATTRIBUTE_NORMAL, // Normal file + FILE_ATTRIBUTE_NORMAL, // Normal file NULL); // No attribute template if (SrcFile == INVALID_HANDLE_VALUE) { - DPRINT(MID_TRACE, ("File not found (%s).\n", FileNode->FileName)); + DPRINT(MID_TRACE, ("File not found (%s).\n", NewFileName)); + FreeMemory(NewFileName); return CAB_STATUS_CANNOT_OPEN; } #else /* !WIN32 */ - SrcFile = fopen(FileNode->FileName, "rb"); + SrcFile = fopen(NewFileName, "rb"); if (SrcFile == NULL) { - DPRINT(MID_TRACE, ("File not found (%s).\n", FileNode->FileName)); + DPRINT(MID_TRACE, ("File not found (%s).\n", NewFileName)); + FreeMemory(NewFileName); return CAB_STATUS_CANNOT_OPEN; } #endif + FileNode = NewFileNode(); + if (!FileNode) { + DPRINT(MIN_TRACE, ("Insufficient memory.\n")); + FreeMemory(NewFileName); + return CAB_STATUS_NOMEMORY; + } + + FileNode->FolderNode = CurrentFolderNode; + FileNode->FileName = NewFileName; + /* FIXME: Check for and handle large files (>= 2GB) */ FileNode->File.FileSize = GetSizeOfFile(SrcFile); if (FileNode->File.FileSize == (unsigned long)-1) { DPRINT(MIN_TRACE, ("Cannot read from file.\n")); + FreeMemory(NewFileName); return CAB_STATUS_CANNOT_READ; } @@ -2545,8 +2560,8 @@ unsigned long CCabinet::InitCabinetHeader() CABHeader.FileCount = 0; // Not known yet CABHeader.Flags = 0; // Not known yet - CABHeader.CabinetNumber = CurrentDiskNumber; - + CABHeader.CabinetNumber = (unsigned short)CurrentDiskNumber; + if ((CurrentDiskNumber > 0) && (OnCabinetName(PrevCabinetNumber, CabinetPrev))) { CABHeader.Flags |= CAB_FLAG_HASPREV; if (!OnDiskLabel(PrevCabinetNumber, DiskPrev)) @@ -2672,7 +2687,7 @@ unsigned long CCabinet::WriteCabinetHeader(bool MoreDisks) /* Write per-cabinet reserved area if present */ if (CABHeader.Flags & CAB_FLAG_RESERVE) { unsigned long ReservedSize; - + ReservedSize = CabinetReservedFileSize & 0xffff; ReservedSize |= (0 << 16); /* Folder reserved area size */ ReservedSize |= (0 << 24); /* Folder reserved area size */ @@ -2846,7 +2861,7 @@ unsigned long CCabinet::WriteFileEntries() /* The file could end in the last (split) block and should therefore appear in the next disk too */ - + if ((File->File.FileOffset + File->File.FileSize >= LastBlockStart) && (File->File.FileControlID <= CAB_FILE_MAX_FOLDER) && (BlockIsSplit)) { File->File.FileControlID = CAB_FILE_SPLIT; @@ -2914,7 +2929,7 @@ unsigned long CCabinet::CommitDataBlocks(PCFFOLDER_NODE FolderNode) DataNode = FolderNode->DataListHead; if (DataNode != NULL) Status = ScratchFile->Seek(DataNode->ScratchFilePosition); - + while (DataNode != NULL) { DPRINT(MAX_TRACE, ("Reading block at (0x%lX) CompSize (%d) UncompSize (%d).\n", DataNode->ScratchFilePosition, diff --git a/reactos/tools/cabman/cabinet.h b/reactos/tools/cabman/cabinet.h index b200a8045c2..5c496d41206 100755 --- a/reactos/tools/cabman/cabinet.h +++ b/reactos/tools/cabman/cabinet.h @@ -58,6 +58,10 @@ extern unsigned long DebugTraceLevel; +#ifdef _MSC_VER +#define __FUNCTION__ "" +#endif//_MSC_VER + #define DPRINT(_t_, _x_) \ if (((DebugTraceLevel & NORMAL_MASK) >= _t_) || \ ((DebugTraceLevel & _t_) > NORMAL_MASK)) { \ diff --git a/reactos/tools/cabman/cabman.mak b/reactos/tools/cabman/cabman.mak new file mode 100755 index 00000000000..240a9108210 --- /dev/null +++ b/reactos/tools/cabman/cabman.mak @@ -0,0 +1,68 @@ +CABMAN_BASE = $(TOOLS_BASE_)cabman +CABMAN_BASE_ = $(CABMAN_BASE)$(SEP) +CABMAN_INT = $(INTERMEDIATE_)$(CABMAN_BASE) +CABMAN_INT_ = $(CABMAN_INT)$(SEP) +CABMAN_OUT = $(OUTPUT_)$(CABMAN_BASE) +CABMAN_OUT_ = $(CABMAN_OUT)$(SEP) + +$(CABMAN_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(CABMAN_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +CABMAN_TARGET = \ + $(EXEPREFIX)$(CABMAN_OUT_)cabman$(EXEPOSTFIX) + +CABMAN_SOURCES = $(addprefix $(CABMAN_BASE_), \ + cabinet.cxx \ + dfp.cxx \ + main.cxx \ + mszip.cxx \ + raw.cxx \ + ) + +CABMAN_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(CABMAN_SOURCES:.cxx=.o)) + +CABMAN_HOST_CFLAGS = -Iinclude/reactos -Ilib/zlib -g -Werror -Wall + +CABMAN_HOST_LIBS = $(ZLIB_HOST_TARGET) + +CABMAN_HOST_LFLAGS = -g $(CABMAN_HOST_LIBS) + +.PHONY: cabman +cabman: $(CABMAN_TARGET) + +$(CABMAN_TARGET): $(CABMAN_OBJECTS) $(CABMAN_HOST_LIBS) | $(CABMAN_OUT) + $(ECHO_LD) + ${host_gpp} $(CABMAN_OBJECTS) $(CABMAN_HOST_LFLAGS) -o $@ + +$(CABMAN_INT_)cabinet.o: $(CABMAN_BASE_)cabinet.cxx | $(CABMAN_INT) + $(ECHO_CC) + ${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@ + +$(CABMAN_INT_)dfp.o: $(CABMAN_BASE_)dfp.cxx | $(CABMAN_INT) + $(ECHO_CC) + ${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@ + +$(CABMAN_INT_)main.o: $(CABMAN_BASE_)main.cxx | $(CABMAN_INT) + $(ECHO_CC) + ${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@ + +$(CABMAN_INT_)mszip.o: $(CABMAN_BASE_)mszip.cxx | $(CABMAN_INT) + $(ECHO_CC) + ${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@ + +$(CABMAN_INT_)raw.o: $(CABMAN_BASE_)raw.cxx | $(CABMAN_INT) + $(ECHO_CC) + ${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@ + +.PHONY: cabman_clean +cabman_clean: + -@$(rm) $(CABMAN_TARGET) $(CABMAN_OBJECTS) 2>$(NUL) +clean: cabman_clean diff --git a/reactos/tools/cabman/dfp.cxx b/reactos/tools/cabman/dfp.cxx index b0032ba3126..bce030f4eb3 100755 --- a/reactos/tools/cabman/dfp.cxx +++ b/reactos/tools/cabman/dfp.cxx @@ -78,6 +78,8 @@ CDFParser::CDFParser() InfModeEnabled = false; InfFileHandle = NULL; + + strcpy(FileRelativePath, ""); } CDFParser::~CDFParser() @@ -385,6 +387,20 @@ unsigned long CDFParser::Parse() } +void CDFParser::SetFileRelativePath(char* Path) +/* + * FUNCTION: Sets path where files in the .dff is assumed relative to + * ARGUMENTS: + * Path = Pointer to string with path + */ +{ + strcpy(FileRelativePath, Path); + ConvertPath(FileRelativePath, false); + if (strlen(FileRelativePath) > 0) + NormalizePath(FileRelativePath, MAX_PATH); +} + + bool CDFParser::OnDiskLabel(unsigned long Number, char* Label) /* * FUNCTION: Called when a disk needs a label @@ -1000,6 +1016,7 @@ unsigned long CDFParser::PerformFileCopy() char SrcName[MAX_PATH]; char DstName[MAX_PATH]; char InfLine[MAX_PATH]; + char BaseFilename[MAX_PATH]; strcpy(SrcName, ""); strcpy(DstName, ""); @@ -1015,7 +1032,8 @@ unsigned long CDFParser::PerformFileCopy() CurrentString[i] = '\0'; CurrentToken = TokenString; CurrentChar = i + 1; - strcpy(SrcName, CurrentString); + strcpy(BaseFilename, CurrentString); + strcat(SrcName, BaseFilename); SkipSpaces(); @@ -1064,6 +1082,11 @@ unsigned long CDFParser::PerformFileCopy() WriteInfLine(InfLine); Status = AddFile(SrcName); + if (Status == CAB_STATUS_CANNOT_OPEN) { + strcpy(SrcName, FileRelativePath); + strcat(SrcName, BaseFilename); + Status = AddFile(SrcName); + } if (Status != CAB_STATUS_SUCCESS) { if (Status == CAB_STATUS_CANNOT_OPEN) printf("File does not exist: %s.\n", SrcName); @@ -1089,7 +1112,7 @@ void CDFParser::SkipSpaces() } -bool CDFParser::IsNextToken(TOKEN Token, bool NoSpaces) +bool CDFParser::IsNextToken(DFP_TOKEN Token, bool NoSpaces) /* * FUNCTION: Checks if next token equals Token * ARGUMENTS: diff --git a/reactos/tools/cabman/dfp.h b/reactos/tools/cabman/dfp.h index 8a127bcc199..af2983a5aa2 100755 --- a/reactos/tools/cabman/dfp.h +++ b/reactos/tools/cabman/dfp.h @@ -32,7 +32,7 @@ typedef enum { TokenPeriod, TokenBackslash, TokenEnd, -} TOKEN; +} DFP_TOKEN; typedef enum { @@ -60,8 +60,10 @@ public: virtual ~CDFParser(); unsigned long Load(char* FileName); unsigned long Parse(); - bool InfFileOnly; + void SetFileRelativePath(char* Path); + bool InfFileOnly; bool DontGenerateInf; + char FileRelativePath[300]; private: /* Event handlers */ virtual bool OnDiskLabel(unsigned long Number, char* Label); @@ -86,7 +88,7 @@ private: unsigned long PerformCommand(); unsigned long PerformFileCopy(); void SkipSpaces(); - bool IsNextToken(TOKEN Token, bool NoSpaces); + bool IsNextToken(DFP_TOKEN Token, bool NoSpaces); bool ReadLine(); void NextToken(); /* Parsing */ @@ -100,7 +102,7 @@ private: unsigned long CurrentLine; unsigned long CurrentChar; /* Token */ - TOKEN CurrentToken; + DFP_TOKEN CurrentToken; unsigned long CurrentInteger; char CurrentString[256]; diff --git a/reactos/tools/cabman/main.cxx b/reactos/tools/cabman/main.cxx index 0387332f305..6ceba018dcb 100755 --- a/reactos/tools/cabman/main.cxx +++ b/reactos/tools/cabman/main.cxx @@ -189,9 +189,9 @@ void CCABManager::Usage() */ { printf("ReactOS Cabinet Manager - Version %s\n\n", CM_VERSION); - printf("CABMAN [/D | /E] [/A] [/L dir] cabinet [filename ...]\n"); - printf("CABMAN /C dirfile [/I] [/RC file]\n"); - printf("CABMAN /S cabinet filename\n"); + printf("CABMAN [-D | -E] [-A] [-L dir] cabinet [filename ...]\n"); + printf("CABMAN -C dirfile [-I] [-RC file] [-P dir]\n"); + printf("CABMAN -S cabinet filename\n"); printf(" cabinet Cabinet file.\n"); printf(" filename Name of the file to extract from the cabinet.\n"); printf(" Wild cards and multiple filenames\n"); @@ -199,18 +199,19 @@ void CCABManager::Usage() printf(" dirfile Name of the directive file to use.\n"); - printf(" /A Process ALL cabinets. Follows cabinet chain\n"); + printf(" -A Process ALL cabinets. Follows cabinet chain\n"); printf(" starting in first cabinet mentioned.\n"); - printf(" /C Create cabinet.\n"); - printf(" /D Display cabinet directory.\n"); - printf(" /E Extract files from cabinet.\n"); - printf(" /I Don't create the cabinet, only the .inf file.\n"); - printf(" /L dir Location to place extracted or generated files\n"); + printf(" -C Create cabinet.\n"); + printf(" -D Display cabinet directory.\n"); + printf(" -E Extract files from cabinet.\n"); + printf(" -I Don't create the cabinet, only the .inf file.\n"); + printf(" -L dir Location to place extracted or generated files\n"); printf(" (default is current directory).\n"); - printf(" /N Don't create the .inf file, only the cabinet.\n"); - printf(" /RC Specify file to put in cabinet reserved area\n"); + printf(" -N Don't create the .inf file, only the cabinet.\n"); + printf(" -RC Specify file to put in cabinet reserved area\n"); printf(" (size must be less than 64KB).\n"); - printf(" /S Create simple cabinet.\n"); + printf(" -S Create simple cabinet.\n"); + printf(" -P dir Files in the .dff are relative to this directory\n"); } bool CCABManager::ParseCmdline(int argc, char* argv[]) @@ -230,7 +231,7 @@ bool CCABManager::ParseCmdline(int argc, char* argv[]) ShowUsage = (argc < 2); for (i = 1; i < argc; i++) { - if (argv[i][0] == '/') { + if (argv[i][0] == '-') { switch (argv[i][1]) { case 'a': case 'A': ProcessAll = true; break; @@ -276,6 +277,14 @@ bool CCABManager::ParseCmdline(int argc, char* argv[]) break; case 's': case 'S': Mode = CM_MODE_CREATE_SIMPLE; break; + case 'P': + if (argv[i][2] == 0) { + i++; + SetFileRelativePath((char*)&argv[i][0]); + } else { + SetFileRelativePath((char*)&argv[i][1]); + } + break; default: printf("Bad parameter %s.\n", argv[i]); return false; @@ -404,7 +413,7 @@ bool CCABManager::DisplayCabinet() } return true; } else - printf("Cannot not open file: %s\n", GetCabinetName()); + printf("Cannot open file: %s\n", GetCabinetName()); return false; } @@ -443,7 +452,7 @@ bool CCABManager::ExtractFromCabinet() } return true; } else - printf("Cannot not open file: %s.\n", GetCabinetName()); + printf("Cannot open file: %s.\n", GetCabinetName()); return false; } diff --git a/reactos/tools/cabman/makefile b/reactos/tools/cabman/makefile deleted file mode 100755 index a3f779e9b3d..00000000000 --- a/reactos/tools/cabman/makefile +++ /dev/null @@ -1,48 +0,0 @@ -# -# ReactOS Cabinet Manager -# -PATH_TO_TOP = ../.. - -TARGET=cabman$(EXE_POSTFIX) - -all: $(TARGET) - -OBJECTS = cabinet.o mszip.o raw.o main.o dfp.o - -CLEAN_FILES = *.o cabman$(EXE_POSTFIX) - -HOST_CFLAGS = -g -I. -I$(PATH_TO_TOP)/lib/zlib -I$(W32API_PATH)/include -Werror -Wall - -HOST_LFLAGS = -g $(PATH_TO_TOP)/lib/zlib/zlib.host.a - -cabinet.o: cabinet.cxx - $(HOST_CXX) $(HOST_CFLAGS) -c cabinet.cxx -o cabinet.o - -mszip.o: mszip.cxx - $(HOST_CXX) $(HOST_CFLAGS) -c mszip.cxx -o mszip.o - -raw.o: raw.cxx - $(HOST_CXX) $(HOST_CFLAGS) -c raw.cxx -o raw.o - -main.o: main.cxx - $(HOST_CXX) $(HOST_CFLAGS) -c main.cxx -o main.o - -dfp.o: dfp.cxx - $(HOST_CXX) $(HOST_CFLAGS) -c dfp.cxx -o dfp.o - -cabman$(EXE_POSTFIX): $(OBJECTS) - $(HOST_CXX) $(OBJECTS) $(HOST_LFLAGS) -o cabman$(EXE_POSTFIX) - -ifeq ($(HOST_TYPE),unix) -clean: - rm -f *.o - rm -f cabman$(EXE_POSTFIX) -else -clean: - -del *.o - -del cabman$(EXE_POSTFIX) -endif - -.phony: clean - -include $(PATH_TO_TOP)/rules.mak diff --git a/reactos/tools/cdmake/Makefile b/reactos/tools/cdmake/Makefile deleted file mode 100644 index 787f8a2f061..00000000000 --- a/reactos/tools/cdmake/Makefile +++ /dev/null @@ -1,39 +0,0 @@ -# -# CD-Maker -# -PATH_TO_TOP = ../.. - -TARGET=cdmake$(EXE_POSTFIX) - -all: $(TARGET) - -OBJECTS = cdmake.o llmosrt.o - -CLEAN_FILES = *.o cdmake$(EXE_POSTFIX) - -HOST_CFLAGS = -I. -Werror -Wall - -cdmake.o: cdmake.c - $(HOST_CC) $(HOST_CFLAGS) -c cdmake.c -o cdmake.o - -llmosrt.o: llmosrt.c - $(HOST_CC) $(HOST_CFLAGS) -c llmosrt.c -o llmosrt.o - -cdmake$(EXE_POSTFIX): $(OBJECTS) - $(HOST_CC) $(OBJECTS) -o cdmake$(EXE_POSTFIX) - -ifeq ($(HOST_TYPE),unix) -clean: - rm -f *.o - rm -f cdmake$(EXE_POSTFIX) -else -clean: - -del *.o - -del cdmake$(EXE_POSTFIX) -endif - -.phony: clean - -include $(PATH_TO_TOP)/rules.mak - -# EOF diff --git a/reactos/tools/cdmake/cdmake.mak b/reactos/tools/cdmake/cdmake.mak new file mode 100644 index 00000000000..7f5131ecab0 --- /dev/null +++ b/reactos/tools/cdmake/cdmake.mak @@ -0,0 +1,51 @@ +CDMAKE_BASE = $(TOOLS_BASE_)cdmake +CDMAKE_BASE_ = $(CDMAKE_BASE)$(SEP) +CDMAKE_INT = $(INTERMEDIATE_)$(CDMAKE_BASE) +CDMAKE_INT_ = $(CDMAKE_INT)$(SEP) +CDMAKE_OUT = $(OUTPUT_)$(CDMAKE_BASE) +CDMAKE_OUT_ = $(CDMAKE_OUT)$(SEP) + +$(CDMAKE_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(CDMAKE_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +CDMAKE_TARGET = \ + $(EXEPREFIX)$(CDMAKE_OUT_)cdmake$(EXEPOSTFIX) + +CDMAKE_SOURCES = $(addprefix $(CDMAKE_BASE_), \ + cdmake.c \ + llmosrt.c \ + ) + +CDMAKE_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(CDMAKE_SOURCES:.c=.o)) + +CDMAKE_HOST_CFLAGS = -Iinclude -g -Werror -Wall + +CDMAKE_HOST_LFLAGS = -g + +.PHONY: cdmake +cdmake: $(CDMAKE_TARGET) + +$(CDMAKE_TARGET): $(CDMAKE_OBJECTS) | $(CDMAKE_OUT) + $(ECHO_LD) + ${host_gcc} $(CDMAKE_OBJECTS) $(CDMAKE_HOST_LFLAGS) -o $@ + +$(CDMAKE_INT_)cdmake.o: $(CDMAKE_BASE_)cdmake.c | $(CDMAKE_INT) + $(ECHO_CC) + ${host_gcc} $(CDMAKE_HOST_CFLAGS) -c $< -o $@ + +$(CDMAKE_INT_)llmosrt.o: $(CDMAKE_BASE_)llmosrt.c | $(CDMAKE_INT) + $(ECHO_CC) + ${host_gcc} $(CDMAKE_HOST_CFLAGS) -c $< -o $@ + +.PHONY: cdmake_clean +cdmake_clean: $(CDMAKE_TARGET) + -@$(rm) $(CDMAKE_TARGET) $(CDMAKE_OBJECTS) 2>$(NUL) +clean: cdmake_clean diff --git a/reactos/tools/config.mk b/reactos/tools/config.mk deleted file mode 100644 index a6a4e326d8b..00000000000 --- a/reactos/tools/config.mk +++ /dev/null @@ -1,29 +0,0 @@ -# Global configuration - -# -# Include details of the OS configuration -# -include $(PATH_TO_TOP)/config - -CONFIG := - -ifeq ($(DBG), 1) -CONFIG += DBG -endif - -ifeq ($(KDBG), 1) -CONFIG += KDBG -endif - -ifeq ($(CONFIG_SMP), 1) -CONFIG += CONFIG_SMP -endif - -$(PATH_TO_TOP)/tools/mkconfig$(EXE_POSTFIX): $(PATH_TO_TOP)/tools/mkconfig.c - @$(HOST_CC) -g -o $(PATH_TO_TOP)/tools/mkconfig$(EXE_POSTFIX) $(PATH_TO_TOP)/tools/mkconfig.c - -$(PATH_TO_TOP)/config: $(PATH_TO_TOP)/tools/mkconfig$(EXE_POSTFIX) - @$(PATH_TO_TOP)/tools/mkconfig$(EXE_POSTFIX) $(PATH_TO_TOP)/include/roscfg.h$(CONFIG) - -$(PATH_TO_TOP)/include/roscfg.h: $(PATH_TO_TOP)/config - @$(PATH_TO_TOP)/tools/mkconfig$(EXE_POSTFIX) $(PATH_TO_TOP)/include/roscfg.h$(CONFIG) diff --git a/reactos/tools/depend.mk b/reactos/tools/depend.mk deleted file mode 100644 index 99b5dc90825..00000000000 --- a/reactos/tools/depend.mk +++ /dev/null @@ -1,65 +0,0 @@ -# Automatic dependancy tracking -# Define $DEP_OBJECTS before this file is included -# $DEP_OBJECTS contain a list of object files that are checked for dependancies - -ifneq ($(DEPENDENCIES),no) -ifneq ($(MAKECMDGOALS),implib) - -DEP_FILTERED := $(filter-out $(DEP_EXCLUDE_FILTER), $(DEP_OBJECTS:.o=.d)) - -PCH := - -ifeq ($(ROS_USE_PCH),yes) -ifneq ($(TARGET_PCH),) - -PCH = $(TARGET_PCH).gch - -DEP_FILTERED := $(DEP_FILTERED) $(TARGET_PCH:.h=.d) - -endif # TARGET_PCH -endif - -DEP_FILES := $(join $(dir $(DEP_FILTERED)), $(addprefix ., $(notdir $(DEP_FILTERED)))) - -ifneq ($(MAKECMDGOALS),clean) -ifneq ($(DEP_FILES),) --include $(DEP_FILES) -endif -endif - -ifeq ($(SEP),\) -DEPENDS_PATH := $(subst /,\,$(PATH_TO_TOP))\tools -else -DEPENDS_PATH := $(PATH_TO_TOP)/tools -endif - -.%.d: %.c $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.cc $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.cpp $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.S $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.s $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.asm $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(NASM_CMD) $(NFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -.%.d: %.h $(PATH_TO_TOP)/tools/depends$(EXE_POSTFIX) $(GENERATED_HEADER_FILES) - $(HALFVERBOSEECHO) [DEPENDS] $@ - $(PCH_CC) $(CFLAGS) -M $< | $(DEPENDS_PATH)$(SEP)depends$(EXE_POSTFIX) $(@D) $@ - -endif -endif diff --git a/reactos/tools/helper.mk b/reactos/tools/helper.mk deleted file mode 100644 index 1ea5c3d08ac..00000000000 --- a/reactos/tools/helper.mk +++ /dev/null @@ -1,1217 +0,0 @@ -# $Id$ -# -# Helper makefile for ReactOS modules -# Variables this makefile accepts: -# $TARGET_TYPE = Type of target: -# program = User mode program -# proglib = Executable program that have exported functions -# dynlink = Dynamic Link Library (DLL) -# library = Library that will be linked with other code -# driver = Kernel mode driver -# export_driver = Kernel mode driver that have exported functions -# driver_library = Import library for a driver -# kmlibrary = Static kernel-mode library -# host_library = Static library for use in the build env -# hal = Hardware Abstraction Layer -# bootpgm = Boot program -# miniport = Kernel mode driver that does not link with ntoskrnl.exe or hal.dll -# gdi_driver = Kernel mode graphics driver that link with win32k.sys -# subsystem = Kernel subsystem -# kmdll = Kernel mode DLL -# winedll = DLL imported from wine -# kernel = ReactOS kernel -# test = ReactOS test -# $TARGET_APPTYPE = Application type (windows,native,console). -# Required only for TARGET_TYPEs program and proglib -# $TARGET_NAME = Base name of output file and .rc, .def, and .edf files -# $TARGET_OBJECTS = Object files that compose the module -# $TARGET_CPPAPP = C++ application (no,yes) (optional) -# $TARGET_HEADERS = Header files that the object files depend on (optional) -# $TARGET_DEFNAME = Base name of .def and .edf files (optional) -# $TARGET_BASENAME = Base name of output file (overrides $TARGET_NAME if it exists) (optional) -# $TARGET_EXTENSION = Extension of the output file (optional) -# $TARGET_DDKLIBS = DDK libraries that are to be imported by the module (optional) -# $TARGET_SDKLIBS = SDK libraries that are to be imported by the module (optional) -# $TARGET_LIBS = Other libraries that are to be imported by the module (optional) -# $TARGET_GCCLIBS = GCC libraries imported with -l (optional) -# $TARGET_LFLAGS = GCC flags when linking (optional) -# $TARGET_CFLAGS = GCC flags (optional) -# $TARGET_CPPFLAGS = G++ flags (optional) -# $TARGET_ASFLAGS = GCC assembler flags (optional) -# $TARGET_NFLAGS = NASM flags (optional) -# $TARGET_RCFLAGS = Windres flags (optional) -# $TARGET_CLEAN = Files that are part of the clean rule (optional) -# $TARGET_PATH = Relative path for *.def, *.edf, and *.rc (optional) -# $TARGET_BASE = Default base address (optional) -# $TARGET_ENTRY = Entry point (optional) -# $TARGET_NORC = Do not include standard resource file (no,yes) (optional) -# $TARGET_LIBPATH = Destination path for static libraries (optional) -# $TARGET_IMPLIBPATH = Destination path for import libraries (optional) -# $TARGET_INSTALLDIR = Destination path when installed (optional) -# $TARGET_PCH = Filename of header to use to generate a PCH if supported by the compiler (optional) -# $TARGET_BOOTSTRAP = Whether this file is needed to bootstrap the installation (no,yes) (optional) -# $TARGET_BOOTSTRAP_NAME = Name on the installation medium (optional) -# $TARGET_REGTESTS = This module has regression tests (no,yes) (optional) -# $TARGET_WINETESTS = This module Wine regression tests (no,yes) (optional) -# $TARGET_INSTALL = Install the file (no,yes) (optional) -# $SUBDIRS = Subdirs in which to run make (optional) - -include $(PATH_TO_TOP)/config -include $(PATH_TO_TOP)/baseaddress.cfg - -ifeq ($(TARGET_PATH),) -TARGET_PATH := . -endif - -ifeq ($(ARCH),i386) - MK_ARCH_ID := _M_IX86 -endif - -ifeq ($(ARCH),alpha) - MK_ARCH_ID := _M_ALPHA -endif - -ifeq ($(ARCH),mips) - MK_ARCH_ID := _M_MIPS -endif - -ifeq ($(ARCH),powerpc) - MK_ARCH_ID := _M_PPC -endif - -# unknown architecture -ifeq ($(MK_ARCH_ID),) - MK_ARCH_ID := _M_UNKNOWN -endif - -# -# VARIABLES IN USE BY VARIOUS TARGETS -# -# MK_BOOTCDDIR = Directory on the ReactOS ISO CD in which to place the file (subdir of reactos/) -# MK_CFLAGS = C compiler command-line flags for this target -# MK_CPPFLAGS = C++ compiler command-line flags for this target -# MK_DDKLIBS = Import libraries from the ReactOS DDK to link with -# MK_DEFENTRY = Module entry point: -# _WinMain@16 for windows EXE files that are export libraries -# _DriverEntry@8 for .SYS files -# _DllMain@12 for .DLL files -# _DrvEnableDriver@12 for GDI drivers -# _WinMainCRTStartup for Win32 EXE files -# _NtProcessStartup@4 for Native EXE files -# _mainCRTStartup for Console EXE files -# MK_DEFEXT = Extension to give compiled modules (.EXE, .DLL, .SYS, .a) -# MK_DISTDIR = (unused?) -# MK_EXETYPE = Compiler option packages based on type of PE file (exe, dll) -# MK_IMPLIB = Whether or not to generate a DLL import stub library (yes, no) -# MK_IMPLIB_EXT = Extension to give import libraries (.a always) -# MK_IMPLIBDEFPATH = Default place to put the import stub library when built -# MK_IMPLIBONLY = Whether the target is only an import library (yes, no; used only by generic hal) -# MK_INSTALLDIR = Where "make install" should put the target, relative to reactos/ -# MK_MODE = Mode the target's code is intended to run in -# user - User-mode compiler settings -# kernel - Kernel-mode compiler settings -# static - Static library compiler settings -# MK_RCFLAGS = Flags to add to resource compiler command line -# MK_RES_BASE = Base name of resource files -# MK_SDKLIBS = Default SDK libriaries to link with -# - -ifeq ($(TARGET_TYPE),program) - MK_MODE := user - MK_EXETYPE := exe - MK_DEFEXT := .exe - MK_DEFENTRY := _DEFINE_TARGET_APPTYPE - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := bin - MK_BOOTCDDIR := system32 - MK_DISTDIR := apps - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),proglib) - MK_MODE := user - MK_EXETYPE := dll - MK_DEFEXT := .exe - MK_DEFENTRY := _WinMain@16 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(SDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := bin - MK_BOOTCDDIR := system32 - MK_DISTDIR := apps - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),dynlink) - MK_MODE := user - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := _DllMain@12 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(SDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := system32 - MK_DISTDIR := dlls - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),library) - TARGET_NORC := yes - MK_MODE := static - MK_EXETYPE := - MK_DEFEXT := .a - MK_DEFENTRY := - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := - MK_INSTALLDIR := # none - MK_BOOTCDDIR := system32 - MK_DISTDIR := # none - MK_RES_BASE := -endif - -ifeq ($(TARGET_TYPE),kmlibrary) - TARGET_NORC := yes - MK_MODE := static - MK_DEFEXT := .a - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - #MK_IMPLIB_EXT := -endif - -ifeq ($(TARGET_TYPE),driver_library) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := no - MK_IMPLIBONLY := yes - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := $(DDK_PATH_INC) - MK_BOOTCDDIR := . - MK_DISTDIR := # FIXME - MK_RES_BASE := -endif - -ifeq ($(TARGET_TYPE),host_library) - TARGET_NORC := yes - MK_MODE := static - MK_DEFEXT := .a - MK_CFLAGS := - MK_CPPFLAGS := - MK_HOST_CFLAGS := yes - MK_LIBPATH := . - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_CC := $(HOST_CC) - MK_AR := $(HOST_AR) -endif - -ifeq ($(TARGET_TYPE),driver) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .sys - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := ntoskrnl.a hal.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32/drivers - MK_BOOTCDDIR := . - MK_DISTDIR := drivers - MK_RES_BASE := $(TARGET_NAME) - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 -endif - -ifeq ($(TARGET_TYPE),export_driver) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .sys - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := ntoskrnl.a hal.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32/drivers - MK_BOOTCDDIR := . - MK_DISTDIR := drivers - MK_RES_BASE := $(TARGET_NAME) - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 -endif - -ifeq ($(TARGET_TYPE),hal) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := ntoskrnl.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTHAL__ -I. - MK_CPPFLAGS := -D__NTHAL__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := . - MK_DISTDIR := dlls - MK_RES_BASE := $(TARGET_NAME) - MK_INSTALL_BASENAME := hal - MK_INSTALL_FULLNAME := hal.dll - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 - ifeq ($(TARGET_BOOTSTRAP),yes) - TARGET_BOOTSTRAP_NAME := hal.dll - else - TARGET_BOOTSTRAP_NAME := $(TARGET_NAME)$(MK_DEFEXT) - endif - TARGET_BOOTSTRAP := yes -endif - -ifeq ($(TARGET_TYPE),bootpgm) - MK_MODE := kernel - MK_EXETYPE := exe - MK_DEFEXT := .exe - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := .a - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := system32 - MK_DISTDIR := # FIXME - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),miniport) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .sys - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32/drivers - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 - MK_BOOTCDDIR := . - MK_DISTDIR := drivers - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),gdi_driver) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := _DrvEnableDriver@12 - MK_DDKLIBS := ntoskrnl.a hal.a win32k.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := . - MK_DISTDIR := dlls - MK_LFLAGS := -Wl,--file-alignment,0x1000 \ - -Wl,--section-alignment,0x1000 - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),kernel) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .exe - MK_DEFENTRY := _NtProcessStartup - MK_DDKLIBS := hal.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTOSKRNL__ -I. - MK_CPPFLAGS := -D__NTOSKRNL__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := . - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),test) - TARGET_NORC := yes - MK_MODE := static - MK_EXETYPE := - MK_DEFEXT := .a - MK_DEFENTRY := - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -I. - MK_CPPFLAGS := -I. - MK_IMPLIB := no - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := - MK_IMPLIB_EXT := - MK_INSTALLDIR := # none - MK_BOOTCDDIR := system32 - MK_DISTDIR := # none - MK_RES_BASE := - TARGET_OBJECTS := _rtstub.o _regtests.o $(TARGET_OBJECTS) -endif - -ifeq ($(MK_CC),) - MK_CC := $(CC) -endif - -ifeq ($(MK_AR),) - MK_AR := $(AR) -endif - -# can be overidden with $(CXX) for linkage of c++ executables -LD_CC = $(MK_CC) - -ifeq ($(RM_AT_FROM_SYMBOLS),no) - MK_KILLAT := -else - MK_KILLAT := --kill-at -endif - -ifeq ($(TARGET_TYPE),program) - ifeq ($(TARGET_APPTYPE),windows) - MK_DEFENTRY := _WinMainCRTStartup - MK_SDKLIBS := ntdll.a kernel32.a gdi32.a user32.a - TARGET_LFLAGS += -Wl,--subsystem,windows - endif - - ifeq ($(TARGET_APPTYPE),native) - MK_DEFENTRY := _NtProcessStartup@4 - MK_SDKLIBS := ntdll.a - TARGET_LFLAGS += -Wl,--subsystem,native -nostartfiles - endif - - ifeq ($(TARGET_APPTYPE),console) - MK_DEFENTRY := _mainCRTStartup - MK_SDKLIBS := - TARGET_LFLAGS += -Wl,--subsystem,console - endif -endif - -ifeq ($(TARGET_TYPE),proglib) - ifeq ($(TARGET_APPTYPE),windows) - MK_DEFENTRY := _WinMainCRTStartup - MK_SDKLIBS := ntdll.a kernel32.a gdi32.a user32.a - TARGET_LFLAGS += -Wl,--subsystem,windows - endif - - ifeq ($(TARGET_APPTYPE),native) - MK_DEFENTRY := _NtProcessStartup@4 - MK_SDKLIBS := ntdll.a - TARGET_LFLAGS += -Wl,--subsystem,native -nostartfiles - endif - - ifeq ($(TARGET_APPTYPE),console) - MK_DEFENTRY := _mainCRTStartup - MK_SDKLIBS := - TARGET_LFLAGS += -Wl,--subsystem,console - endif -endif - -ifeq ($(TARGET_TYPE),subsystem) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .sys - MK_DEFENTRY := _DriverEntry@8 - MK_DDKLIBS := ntoskrnl.a hal.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_DISTDIR := drivers - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),kmdll) - MK_MODE := kernel - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := 0x0 - MK_DDKLIBS := ntoskrnl.a hal.a - MK_SDKLIBS := - MK_CFLAGS := -D__NTDRIVER__ -I. - MK_CPPFLAGS := -D__NTDRIVER__ -I. - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(DDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_DISTDIR := drivers - MK_RES_BASE := $(TARGET_NAME) -endif - -ifeq ($(TARGET_TYPE),winedll) --include Makefile.ros - MK_GENERATED_MAKEFILE = Makefile.ros - MK_MODE := user - MK_EXETYPE := dll - MK_DEFEXT := .dll - MK_DEFENTRY := _DllMain@12 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -D__USE_W32API -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 -DWINVER=0x501 -D_STDDEF_H -I$(PATH_TO_TOP)/include/wine - MK_CPPFLAGS := -D__USE_W32API -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 -DWINVER=0x501 -D__need_offsetof -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/include/wine - MK_HOST_CFLAGS := yes - MK_PREPROC_FOR_RC_FLAGS := -xc -E -DRC_INVOKED -D__USE_W32API -I$(PATH_TO_TOP)/include/wine -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/w32api/include - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(SDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := system32 - MK_DISTDIR := dlls - MK_RES_BASE := $(TARGET_NAME) -ifeq ($(TARGET_DEFNAME),) - MK_DEFBASENAME := $(TARGET_NAME).spec - MK_SPECDEF := $(MK_DEFBASENAME).def -else - MK_DEFBASENAME := $(TARGET_DEFNAME) -endif -ifneq ($(TARGET_STUBS),no) - MK_STUBS_SRC := $(TARGET_NAME).stubs.c - MK_STUBS_OBJ := $(TARGET_NAME).stubs.o -endif - MK_RC_BINARIES = $(TARGET_RC_BINARIES) -endif - -ifeq ($(TARGET_TYPE),winedrv) --include Makefile.ros - MK_GENERATED_MAKEFILE = Makefile.ros - MK_MODE := user - MK_EXETYPE := drv - MK_DEFEXT := .drv -# does this need changing?: - MK_DEFENTRY := _DllMain@12 - MK_DDKLIBS := - MK_SDKLIBS := - MK_CFLAGS := -D__USE_W32API -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 -DWINVER=0x501 -D__need_offsetof -I$(PATH_TO_TOP)/include/wine - MK_CPPFLAGS := -D__USE_W32API -D_WIN32_IE=0x600 -D_WIN32_WINNT=0x501 -DWINVER=0x501 -D__need_offsetof -I$(PATH_TO_TOP)/include -I$(PATH_TO_TOP)/include/wine - MK_HOST_CFLAGS := yes - MK_RCFLAGS := --define __USE_W32API --include-dir $(PATH_TO_TOP)/include/wine - MK_IMPLIB := yes - MK_IMPLIBONLY := no - MK_IMPLIBDEFPATH := $(SDK_PATH_LIB) - MK_IMPLIB_EXT := .a - MK_INSTALLDIR := system32 - MK_BOOTCDDIR := system32 - MK_DISTDIR := dlls - MK_RES_BASE := $(TARGET_NAME) -ifeq ($(TARGET_DEFNAME),) - MK_DEFBASENAME := $(TARGET_NAME).spec - MK_SPECDEF := $(MK_DEFBASENAME).def -else - MK_DEFBASENAME := $(TARGET_DEFNAME) -endif - MK_RC_BINARIES = $(TARGET_RC_BINARIES) -endif - -ifeq ($(TARGET_RC_SRCS),) - MK_RES_SRC := $(TARGET_PATH)/$(MK_RES_BASE).rc - MK_RESOURCE := $(TARGET_PATH)/$(MK_RES_BASE).coff -else - MK_RES_SRC := $(TARGET_RC_SRCS) - MK_RESOURCE := $(TARGET_RC_SRCS:.rc=.coff) -endif - -ifneq ($(TARGET_INSTALLDIR),) - MK_INSTALLDIR := $(TARGET_INSTALLDIR) -endif - - -ifneq ($(BOOTCD_INSTALL),) - MK_INSTALLDIR := . -endif - - -ifeq ($(TARGET_LIBPATH),) - ifeq ($(MK_LIBPATH),) - MK_LIBPATH := $(SDK_PATH_LIB) - endif -else - MK_LIBPATH := $(TARGET_LIBPATH) -endif - -ifeq ($(TARGET_IMPLIBPATH),) - MK_IMPLIBPATH := $(MK_IMPLIBDEFPATH) -else - MK_IMPLIBPATH := $(TARGET_IMPLIBPATH) -endif - - -ifeq ($(TARGET_BASENAME),) - MK_BASENAME := $(TARGET_NAME) -else - MK_BASENAME := $(TARGET_BASENAME) -endif - - -ifeq ($(TARGET_EXTENSION),) - MK_EXT := $(MK_DEFEXT) -else - MK_EXT := $(TARGET_EXTENSION) -endif - - -ifeq ($(TARGET_NORC),yes) - MK_FULLRES := -else - MK_FULLRES := $(MK_RESOURCE) -endif - -ifneq ($(TARGET_TYPE),winedll) -ifeq ($(TARGET_DEFNAME),) - MK_DEFBASENAME := $(TARGET_NAME) -else - MK_DEFBASENAME := $(TARGET_DEFNAME) -endif -endif - -MK_DEFNAME := $(TARGET_PATH)/$(MK_DEFBASENAME).def - -ifeq ($(MK_MODE),user) - ifeq ($(MK_EXETYPE),dll) - MK_DEFBASE := 0x10000000 - else - MK_DEFBASE := 0x400000 - endif - ifneq ($(TARGET_SDKLIBS),) - MK_LIBS := $(addprefix $(SDK_PATH_LIB)/lib, $(TARGET_SDKLIBS)) - else - MK_LIBS := $(addprefix $(SDK_PATH_LIB)/lib, $(MK_SDKLIBS)) - endif -endif - -ifeq ($(MK_HOST_CFLAGS),yes) - MK_CFLAGS += $(HOST_STD_CFLAGS) - MK_CPPFLAGS += $(HOST_STD_CPPFLAGS) -else - MK_CFLAGS += $(STD_CFLAGS) - MK_CPPFLAGS += $(STD_CPPFLAGS) -endif - -ifeq ($(MK_MODE),kernel) - MK_DEFBASE := 0x10000 - MK_LIBS := $(addprefix $(DDK_PATH_LIB)/lib, $(TARGET_DDKLIBS) $(MK_DDKLIBS)) - MK_CFLAGS += -D_SEH_NO_NATIVE_NLG - MK_CPPFLAGS += -D_SEH_NO_NATIVE_NLG - MK_LFLAGS += -nostartfiles -ifneq ($(TARGET_TYPE),kernel) - MK_LFLAGS += -nostdlib -endif -endif - -# -# Force Optimization for w3seek -# -ifeq ($(OPTIMIZE),yes) - # Don't double it - ifneq ($(DBG),0) - MK_CFLAGS += -O2 -Wno-strict-aliasing - MK_CPPFLAGS += -O2 -Wno-strict-aliasing - endif -endif - -# -# Enable Tree-Wide Optimization if Debug is on. -# Protect uncompatible files here with an ifneq -# if needed, until their problems can be found -# -ifneq ($(DBG),1) - MK_CFLAGS += -Os -Wno-strict-aliasing -ftracer -momit-leaf-frame-pointer - MK_CFLAGS += -mpreferred-stack-boundary=2 - - #CC_VERSION=$(word 1,$(shell gcc -dumpversion)) - ifeq ($(CC_VERSION),3.4.3) - MK_CFLAGS += -funit-at-a-time -fweb - endif - - # - # Remove Symbols if no debugging is used at all - # - ifneq ($(KDBG),1) - TARGET_LFLAGS += -Wl,-O1 -Wl,--sort-common -s - endif - - MK_CPPFLAGS += -O2 -Wno-strict-aliasing - MK_CPPFLAGS += -mpreferred-stack-boundary=2 - OPTIMIZE = yes -endif - -ifneq ($(TARGET_LIBS),) - MK_LIBS := $(TARGET_LIBS) $(MK_LIBS) -endif - - -ifeq ($(TARGET_BASE),) - TARGET_BASE := $(MK_DEFBASE) -endif - - -ifeq ($(TARGET_ENTRY),) - TARGET_ENTRY := $(MK_DEFENTRY) -endif - -# -# Include details of the OS configuration -# -include $(PATH_TO_TOP)/config - - -TARGET_CFLAGS += $(MK_CFLAGS) -g - -TARGET_CPPFLAGS += $(MK_CPPFLAGS) -g - -TARGET_RCFLAGS += $(MK_RCFLAGS) $(STD_RCFLAGS) - -TARGET_ASFLAGS += $(MK_ASFLAGS) $(STD_ASFLAGS) -g - -TARGET_NFLAGS += $(MK_NFLAGS) $(STD_NFLAGS) - -TARGET_LFLAGS += $(MK_LFLAGS) $(STD_LFLAGS) -g - - -MK_GCCLIBS := $(addprefix -l, $(TARGET_GCCLIBS)) - -ifeq ($(MK_MODE),static) - MK_FULLNAME := $(MK_LIBPATH)/lib$(MK_BASENAME)$(MK_EXT) -else - MK_FULLNAME := $(MK_BASENAME)$(MK_EXT) -endif - -ifeq ($(TARGET_TYPE), kmlibrary) - MK_FULLNAME := $(DDK_PATH_LIB)/lib$(MK_BASENAME)$(MK_EXT) -endif - -MK_IMPLIB_FULLNAME := lib$(MK_BASENAME)$(MK_IMPLIB_EXT) - -MK_NOSTRIPNAME := $(MK_BASENAME).nostrip$(MK_EXT) -MK_DEBUGNAME := $(MK_BASENAME).dbg - -MK_EXTRADEP := $(filter %.h,$(TARGET_OBJECTS)) - -ifeq ($(TARGET_TYPE),test) -MK_EXTRADEP += _stubs.o _hooks.o -endif - -# We don't want to link header files -MK_OBJECTS := $(filter-out %.h,$(TARGET_OBJECTS)) $(MK_STUBS_OBJ) - -# There is problems with C++ applications and ld -r. Ld can cause errors like: -# reloc refers to symbol `.text$_ZN9CCABCodecC2Ev' which is not being output -ifeq ($(TARGET_CPPAPP),yes) - MK_STRIPPED_OBJECT := $(MK_OBJECTS) -else - MK_STRIPPED_OBJECT := $(MK_BASENAME).stripped.o -endif - -ifeq ($(TARGET_REGTESTS),yes) - REGTEST_TARGETS := tests/_hooks.c tests/_regtests.c tests/_stubs.S tests/Makefile.tests tests/_rtstub.c - MK_REGTESTS_CLEAN := clean_regtests -else - REGTEST_TARGETS := - MK_REGTESTS_CLEAN := -endif - -ifeq ($(TARGET_WINETESTS),yes) -all: - - $(MAKE) -C winetests - MK_REGTESTS_CLEAN := clean_winetests -endif - -ifeq ($(TARGET_INSTALL),) - MK_INSTALL := yes -else - MK_INSTALL := $(TARGET_INSTALL) -endif - -ifeq ($(MK_INSTALL_BASENAME),) - MK_INSTALL_BASENAME := $(MK_BASENAME) -endif -ifeq ($(MK_INSTALL_FULLNAME),) - MK_INSTALL_FULLNAME := $(MK_FULLNAME) -endif - -ifeq ($(MK_IMPLIBONLY),yes) - -TARGET_CLEAN += $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME) - -all: $(WINETEST_TARGETS) $(REGTEST_TARGETS) $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME) - -$(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME): $(MK_OBJECTS) $(MK_DEFNAME) - $(HALFVERBOSEECHO) [DLLTOOL] $(MK_IMPLIB_FULLNAME) - $(DLLTOOL) \ - --dllname $(MK_FULLNAME) \ - --def $(MK_DEFNAME) \ - --output-lib $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME) \ - $(MK_KILLAT) - -else # MK_IMPLIBONLY - -all: $(REGTEST_TARGETS) $(MK_FULLNAME) $(MK_NOSTRIPNAME) $(SUBDIRS:%=%_all) - - -ifeq ($(MK_IMPLIB),yes) - MK_EXTRACMD := --def $(MK_DEFNAME) -else - MK_EXTRACMD := -endif - - -# User mode targets -ifeq ($(MK_MODE),user) - -ifeq ($(MK_EXETYPE),dll) - TARGET_LFLAGS += -mdll -Wl,--image-base,$(TARGET_BASE) - MK_EXTRADEP += $(MK_DEFNAME) - MK_EXTRACMD2 := -Wl,temp.exp -else - MK_EXTRACMD2 := -endif - -$(MK_BASENAME).a: $(MK_OBJECTS) - $(HALFVERBOSEECHO) [AR] $(MK_BASENAME).a - $(MK_AR) -rc $(MK_BASENAME).a $(MK_OBJECTS) - -$(MK_NOSTRIPNAME): $(MK_EXTRADEP) $(MK_FULLRES) $(MK_BASENAME).a $(MK_LIBS) $(MK_STUBS_SRC) $(MK_STUBS_OBJ) - $(HALFVERBOSEECHO) [LD] $(MK_NOSTRIPNAME) -ifeq ($(MK_EXETYPE),dll) - $(LD_CC) -Wl,--base-file,base.tmp \ - -Wl,--entry,$(TARGET_ENTRY) \ - $(TARGET_LFLAGS) \ - -o junk.tmp \ - $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS) $(MK_GCCLIBS) - - $(RM) junk.tmp - $(DLLTOOL) --dllname $(MK_FULLNAME) \ - --base-file base.tmp \ - --output-exp temp.exp $(MK_EXTRACMD) - - $(RM) base.tmp - $(LD_CC) -Wl,--base-file,base.tmp \ - -Wl,--entry,$(TARGET_ENTRY) \ - $(TARGET_LFLAGS) \ - temp.exp \ - -o junk.tmp \ - $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS) $(MK_GCCLIBS) - - $(RM) junk.tmp - $(DLLTOOL) --dllname $(MK_FULLNAME) \ - --base-file base.tmp \ - --output-exp temp.exp $(MK_KILLAT) $(MK_EXTRACMD) - - $(RM) base.tmp -endif - $(LD_CC) $(TARGET_LFLAGS) \ - -Wl,--entry,$(TARGET_ENTRY) $(MK_EXTRACMD2) \ - -o $(MK_NOSTRIPNAME) \ - $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS) $(MK_GCCLIBS) - - $(RM) temp.exp -ifeq ($(BUILD_MAP),full) - $(HALFVERBOSEECHO) [OBJDUMP] $(MK_BASENAME).map - $(OBJDUMP) -d -S $(MK_NOSTRIPNAME) > $(MK_BASENAME).map -else -ifeq ($(BUILD_MAP),yes) - $(HALFVERBOSEECHO) [NM] $(MK_BASENAME).map - $(NM) --numeric-sort $(MK_NOSTRIPNAME) > $(MK_BASENAME).map -endif -endif - -$(MK_FULLNAME): $(MK_NOSTRIPNAME) $(MK_EXTRADEP) - $(HALFVERBOSEECHO) [RSYM] $(MK_FULLNAME) - $(RSYM) $(MK_NOSTRIPNAME) $(MK_FULLNAME) - -# Strip the files on release builds -ifeq ($(DBG),0) - $(STRIP) -x $(MK_FULLNAME) -endif # DBG - -endif # KM_MODE - -# Kernel mode targets -ifeq ($(MK_MODE),kernel) - -ifeq ($(MK_IMPLIB),yes) - MK_EXTRACMD := --def $(MK_DEFNAME) -else - MK_EXTRACMD := -endif - -$(MK_BASENAME).a: $(MK_OBJECTS) - $(HALFVERBOSEECHO) [AR] $(MK_BASENAME).a - $(MK_AR) -rc $(MK_BASENAME).a $(MK_OBJECTS) - -$(MK_NOSTRIPNAME): $(MK_EXTRADEP) $(MK_FULLRES) $(MK_BASENAME).a $(MK_LIBS) - $(HALFVERBOSEECHO) [LD] $(MK_NOSTRIPNAME) - $(LD_CC) -Wl,--base-file,base.tmp \ - -Wl,--entry,$(TARGET_ENTRY) \ - $(TARGET_LFLAGS) \ - -o junk.tmp \ - $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS) $(MK_GCCLIBS) - - $(RM) junk.tmp - $(DLLTOOL) --dllname $(MK_FULLNAME) \ - --base-file base.tmp \ - --output-exp temp.exp $(MK_EXTRACMD) $(MK_KILLAT) - - $(RM) base.tmp - $(LD_CC) $(TARGET_LFLAGS) \ - -Wl,--subsystem,native \ - -Wl,--image-base,$(TARGET_BASE) \ - -Wl,--entry,$(TARGET_ENTRY) \ - -Wl,temp.exp -mdll \ - -o $(MK_NOSTRIPNAME) \ - $(MK_FULLRES) $(MK_OBJECTS) $(MK_LIBS) $(MK_GCCLIBS) - - $(RM) temp.exp -ifeq ($(BUILD_MAP),full) - $(HALFVERBOSEECHO) [OBJDUMP] $(MK_BASENAME).map - $(OBJDUMP) -d -S $(MK_NOSTRIPNAME) > $(MK_BASENAME).map -else -ifeq ($(BUILD_MAP),yes) - $(HALFVERBOSEECHO) [NM] $(MK_BASENAME).map - $(NM) --numeric-sort $(MK_NOSTRIPNAME) > $(MK_BASENAME).map -endif -endif - -$(MK_FULLNAME): $(MK_NOSTRIPNAME) - $(HALFVERBOSEECHO) [RSYM] $(MK_FULLNAME) - $(RSYM) $(MK_NOSTRIPNAME) $(MK_FULLNAME) - -# Strip the files on release builds -ifeq ($(DBG),0) - $(STRIP) -x $(MK_FULLNAME) -endif # DBG - -endif # MK_MODE - -# Static library target -ifeq ($(MK_MODE),static) - -$(MK_FULLNAME): $(MK_EXTRADEP) $(MK_OBJECTS) - $(HALFVERBOSEECHO) [AR] $(MK_FULLNAME) - $(MK_AR) -rc $(MK_FULLNAME) $(MK_OBJECTS) - -# Static libraries dont have a nostrip version -$(MK_NOSTRIPNAME): - - - -.PHONY: $(MK_NOSTRIPNAME) - -endif # MK_MODE - -endif # MK_IMPLIBONLY - - -$(MK_FULLRES): $(PATH_TO_TOP)/include/reactos/buildno.h $(MK_RES_SRC) - -ifeq ($(MK_DEPENDS),yes) -depends: -else -depends: -endif - -ifeq ($(MK_IMPLIB),yes) -$(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME): $(MK_DEFNAME) - $(HALFVERBOSEECHO) [DLLTOOL] $(MK_IMPLIB_FULLNAME) - $(DLLTOOL) --dllname $(MK_FULLNAME) \ - --def $(MK_DEFNAME) \ - --output-lib $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME) \ - $(MK_KILLAT) - -implib: $(MK_IMPLIBPATH)/$(MK_IMPLIB_FULLNAME) -else -implib: $(SUBDIRS:%=%_implib) -endif - -# Precompiled header support -# When using PCHs, use dependency tracking to keep the .gch files up-to-date. -# When TARGET_PCH is defined, we always want to clean the .gch file, even if -# ROS_USE_PCH is not active. This prevents problems when switching between -# PCH and non-PCH builds. - -ifneq ($(TARGET_PCH),) -MK_PCHCLEAN = $(TARGET_PCH).gch -ifeq ($(ROS_USE_PCH),yes) -MK_PCHNAME = $(TARGET_PCH).gch -ifeq ($(TARGET_CPPAPP),yes) -PCH_CC := $(CXX) -else # TARGET_CPPAPP -PCH_CC := $(MK_CC) -endif # TARGET_CPPAPP -else # ROS_USE_PCH -MK_PCHNAME = -endif # ROS_USE_PCH -else # TARGET_PCH -MK_PCHCLEAN = -MK_PCHNAME = -endif # TARGET_PCH - -# Be carefull not to clean non-object files -MK_CLEANFILES := $(filter %.o,$(MK_OBJECTS)) -MK_CLEANFILTERED := $(MK_OBJECTS:.o=.d) $(TARGET_PCH:.h=.d) -MK_CLEANDEPS := $(join $(dir $(MK_CLEANFILTERED)), $(addprefix ., $(notdir $(MK_CLEANFILTERED)))) - -clean: $(MK_REGTESTS_CLEAN) $(SUBDIRS:%=%_clean) - $(HALFVERBOSEECHO) [CLEAN] - - $(RM) *.o $(MK_PCHCLEAN) $(MK_BASENAME).a $(MK_RESOURCE) \ - $(MK_FULLNAME) $(MK_NOSTRIPNAME) $(MK_CLEANFILES) $(MK_CLEANDEPS) $(MK_BASENAME).map \ - junk.tmp base.tmp temp.exp $(MK_RC_BINARIES) $(MK_SPECDEF) $(MK_STUBS_SRC) \ - $(MK_RES_TEMPS) $(MK_GENERATED_MAKEFILE) $(TARGET_CLEAN) - -ifneq ($(TARGET_HEADERS),) -$(TARGET_OBJECTS): $(TARGET_HEADERS) -endif - -# install and bootcd rules - -ifeq ($(MK_IMPLIBONLY),yes) - -# Don't install import libraries - -forceinstall: - -install: - -bootcd: - -else # MK_IMPLIBONLY - - -# Don't install static libraries -ifeq ($(MK_MODE),static) - -forceinstall: - -install: - -bootcd: - -else # MK_MODE - -ifneq ($(MK_INSTALL),no) - -install: forceinstall - -else # MK_INSTALL - -install: - -endif # MK_INSTALL - -forceinstall: $(SUBDIRS:%=%_install) $(MK_FULLNAME) - $(HALFVERBOSEECHO) [INSTALL] $(MK_FULLNAME) to $(MK_INSTALLDIR)/$(MK_INSTALL_FULLNAME) - -$(CP) $(MK_FULLNAME) $(INSTALL_DIR)/$(MK_INSTALLDIR)/$(MK_INSTALL_FULLNAME) - -# Bootstrap files for the bootable CD -ifeq ($(TARGET_BOOTSTRAP),yes) - -ifneq ($(TARGET_BOOTSTRAP_NAME),) -MK_BOOTSTRAP_NAME := $(TARGET_BOOTSTRAP_NAME) -else # TARGET_BOOTSTRAP_NAME -MK_BOOTSTRAP_NAME := $(MK_INSTALL_FULLNAME) -endif # TARGET_BOOTSTRAP_NAME - -bootcd: $(SUBDIRS:%=%_bootcd) - - $(CP) $(MK_FULLNAME) $(BOOTCD_DIR)/reactos/$(MK_BOOTCDDIR)/$(MK_BOOTSTRAP_NAME) - -else # TARGET_BOOTSTRAP - -bootcd: - -endif # TARGET_BOOTSTRAP - -endif # MK_MODE - -endif # MK_IMPLIBONLY - -ifeq ($(TARGET_TYPE),winedll) -Makefile.ros: Makefile.in Makefile.ros-template - $(WINE2ROS) Makefile.in Makefile.ros-template Makefile.ros - -$(MK_RC_BINARIES): $(TARGET_RC_BINSRC) - $(BIN2RES) -f -o $@ $(TARGET_RC_BINSRC) - -$(MK_RESOURCE): $(MK_RC_BINARIES) - -MK_RES_TEMPS = $(MK_RESOURCE:.coff=.rci) $(MK_RESOURCE:.coff=.res) -endif - -REGTEST_TESTS = $(wildcard tests/tests/*.c) - -$(REGTEST_TARGETS): $(REGTEST_TESTS) ./tests/stubs.tst - $(REGTESTS) ./tests/tests ./tests/_regtests.c ./tests/Makefile.tests -e ./tests/_rtstub.c - $(REGTESTS) -s ./tests/stubs.tst ./tests/_stubs.S ./tests/_hooks.c - -clean_regtests: - - $(MAKE) -C tests TARGET_REGTESTS=no clean - - $(RM) ./tests/_rtstub.c ./tests/_hooks.c ./tests/_regtests.c ./tests/_stubs.S ./tests/Makefile.tests - -clean_winetests: - - $(MAKE) -C winetests clean - -.PHONY: all depends implib clean install dist bootcd depends gen_regtests clean_regtests clean_winetests - -ifneq ($(SUBDIRS),) -$(SUBDIRS:%=%_all): %_all: - $(MAKE) -C $* SUBDIRS= all - -$(SUBDIRS:%=%_implib): %_implib: - $(MAKE) -C $* SUBDIRS= implib - -$(SUBDIRS:%=%_test): %_test: - $(MAKE) -C $* SUBDIRS= test - -$(SUBDIRS:%=%_clean): %_clean: - $(MAKE) -C $* SUBDIRS= clean - -$(SUBDIRS:%=%_install): %_install: - $(MAKE) -C $* SUBDIRS= install - -$(SUBDIRS:%=%_dist): %_dist: - $(MAKE) -C $* SUBDIRS= dist - -$(SUBDIRS:%=%_bootcd): %_bootcd: - $(MAKE) -C $* SUBDIRS= bootcd - -.PHONY: $(SUBDIRS:%=%_all) $(SUBDIRS:%=%_implib) $(SUBDIRS:%=%_test) \ - $(SUBDIRS:%=%_clean) $(SUBDIRS:%=%_install) $(SUBDIRS:%=%_dist) \ - $(SUBDIRS:%=%_bootcd) -endif - -ifeq ($(TARGET_REGTESTS),yes) -test: all - $(MAKE) -C tests run -else -test: - - -endif - -ifeq ($(TARGET_TYPE),test) -run: all - @$(MK_CC) -nostdlib -o _runtest.exe regtests.a $(TARGET_LIBS) _stubs.o \ - $(SDK_PATH_LIB)/librtshared.a $(SDK_PATH_LIB)/libregtests.a $(SDK_PATH_LIB)/libpseh.a \ - _hooks.o -lgcc -lmsvcrt -lntdll - @$(CP) $(REGTESTS_PATH)/regtests/regtests.dll regtests.dll - @_runtest.exe - @$(RM) regtests.dll - @$(RM) _runtest.exe -endif - -%.o: %.c $(MK_PCHNAME) - $(HALFVERBOSEECHO) [CC] $< - $(MK_CC) $(TARGET_CFLAGS) -c $< -o $@ -%.o: %.cc $(MK_PCHNAME) - $(HALFVERBOSEECHO) [CXX] $< - $(CXX) $(TARGET_CPPFLAGS) -c $< -o $@ -%.o: %.cxx $(MK_PCHNAME) - $(HALFVERBOSEECHO) [CXX] $< - $(CXX) $(TARGET_CPPFLAGS) -c $< -o $@ -%.o: %.cpp $(MK_PCHNANE) - $(HALFVERBOSEECHO) [CXX] $< - $(CXX) $(TARGET_CPPFLAGS) -c $< -o $@ -%.o: %.S - $(HALFVERBOSEECHO) [AS] $< - $(AS) $(TARGET_ASFLAGS) -c $< -o $@ -%.o: %.s - $(HALFVERBOSEECHO) [AS] $< - $(AS) $(TARGET_ASFLAGS) -c $< -o $@ -%.o: %.asm - $(HALFVERBOSEECHO) [NASM] $< - $(NASM_CMD) $(TARGET_NFLAGS) $< -o $@ -ifeq ($(TARGET_TYPE),winedll) -%.coff: %.rc - $(HALFVERBOSEECHO) [RC] $< - $(MK_CC) $(MK_PREPROC_FOR_RC_FLAGS) $< > $(<:.rc=.rci) - $(WRC) $(<:.rc=.rci) $(<:.rc=.res) - $(RM) $(<:.rc=.rci) - $(RC) $(<:.rc=.res) -o $@ - $(RM) $(<:.rc=.res) -else -%.coff: %.rc - $(HALFVERBOSEECHO) [RC] $< - $(RC) $(TARGET_RCFLAGS) $< -o $@ -endif -%.spec.def: %.spec - $(HALFVERBOSEECHO) [DEF] $< - $(WINEBUILD) $(DEFS) -o $@ --def -E $< -%.drv.spec.def: %.spec - $(HALFVERBOSEECHO) [DEF] $< - $(WINEBUILD) $(DEFS) -o $@ --def $< -%.stubs.c: %.spec - $(HALFVERBOSEECHO) [STUBS] $< - $(WINEBUILD) $(DEFS) -o $@ --pedll $< -%.i: %.c - $(HALFVERBOSEECHO) [CPP] $< - $(MK_CC) $(TARGET_CFLAGS) -E $< > $@ -%.h.gch: %.h - $(HALFVERBOSEECHO) [PCH] $< - $(PCH_CC) $(CFLAGS) $< -# rule for msvc conversion -%.c: %_msvc.c - $(HALFVERBOSEECHO) [MS2PS] $< - $(subst /,$(SEP),$(MS2PS)) -try try -except except -finally finally < $< > $@ - -# Kill implicit rule -.o:; - -# Compatibility -CFLAGS := $(TARGET_CFLAGS) -NFLAGS := $(TARGET_NFLAGS) diff --git a/reactos/tools/mkhive/mkhive.mak b/reactos/tools/mkhive/mkhive.mak new file mode 100644 index 00000000000..5354d59c27d --- /dev/null +++ b/reactos/tools/mkhive/mkhive.mak @@ -0,0 +1,66 @@ +MKHIVE_BASE = $(TOOLS_BASE_)mkhive +MKHIVE_BASE_ = $(MKHIVE_BASE)$(SEP) +MKHIVE_INT = $(INTERMEDIATE_)$(MKHIVE_BASE) +MKHIVE_INT_ = $(MKHIVE_INT)$(SEP) +MKHIVE_OUT = $(OUTPUT_)$(MKHIVE_BASE) +MKHIVE_OUT_ = $(MKHIVE_OUT)$(SEP) + +$(MKHIVE_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(MKHIVE_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +MKHIVE_TARGET = \ + $(EXEPREFIX)$(MKHIVE_OUT_)mkhive$(EXEPOSTFIX) + +MKHIVE_SOURCES = $(addprefix $(MKHIVE_BASE_), \ + binhive.c \ + infcache.c \ + mkhive.c \ + reginf.c \ + registry.c \ + ) + +MKHIVE_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(MKHIVE_SOURCES:.c=.o)) + +MKHIVE_HOST_CFLAGS = -g -Werror -Wall + +MKHIVE_HOST_LFLAGS = -g + +.PHONY: mkhive +mkhive: $(MKHIVE_TARGET) + +$(MKHIVE_TARGET): $(MKHIVE_OBJECTS) | $(MKHIVE_OUT) + $(ECHO_LD) + ${host_gcc} $(MKHIVE_OBJECTS) $(MKHIVE_HOST_LFLAGS) -o $@ + +$(MKHIVE_INT_)binhive.o: $(MKHIVE_BASE_)binhive.c | $(MKHIVE_INT) + $(ECHO_CC) + ${host_gcc} $(MKHIVE_HOST_CFLAGS) -c $< -o $@ + +$(MKHIVE_INT_)infcache.o: $(MKHIVE_BASE_)infcache.c | $(MKHIVE_INT) + $(ECHO_CC) + ${host_gcc} $(MKHIVE_HOST_CFLAGS) -c $< -o $@ + +$(MKHIVE_INT_)mkhive.o: $(MKHIVE_BASE_)mkhive.c | $(MKHIVE_INT) + $(ECHO_CC) + ${host_gcc} $(MKHIVE_HOST_CFLAGS) -c $< -o $@ + +$(MKHIVE_INT_)reginf.o: $(MKHIVE_BASE_)reginf.c | $(MKHIVE_INT) + $(ECHO_CC) + ${host_gcc} $(MKHIVE_HOST_CFLAGS) -c $< -o $@ + +$(MKHIVE_INT_)registry.o: $(MKHIVE_BASE_)registry.c | $(MKHIVE_INT) + $(ECHO_CC) + ${host_gcc} $(MKHIVE_HOST_CFLAGS) -c $< -o $@ + +.PHONY: mkhive_clean +mkhive_clean: $(MKHIVE_TARGET) + -@$(rm) $(MKHIVE_TARGET) $(MKHIVE_OBJECTS) 2>$(NUL) +clean: mkhive_clean diff --git a/reactos/tools/nci/nci.mak b/reactos/tools/nci/nci.mak new file mode 100644 index 00000000000..c442ad72cf5 --- /dev/null +++ b/reactos/tools/nci/nci.mak @@ -0,0 +1,79 @@ +NCI_BASE = $(TOOLS_BASE_)nci +NCI_BASE_ = $(NCI_BASE)$(SEP) +NCI_INT = $(INTERMEDIATE_)$(NCI_BASE) +NCI_INT_ = $(NCI_INT)$(SEP) +NCI_OUT = $(OUTPUT_)$(NCI_BASE) +NCI_OUT_ = $(NCI_OUT)$(SEP) + +$(NCI_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(NCI_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +NCI_TARGET = \ + $(EXEPREFIX)$(NCI_OUT_)nci$(EXEPOSTFIX) + +NCI_SOURCES = \ + $(NCI_BASE_)ncitool.c + +NCI_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(NCI_SOURCES:.c=.o)) + +NCI_HOST_CFLAGS = -Iinclude -g -Werror -Wall + +NCI_HOST_LFLAGS = -g + +$(NCI_TARGET): $(NCI_OBJECTS) | $(NCI_OUT) + $(ECHO_LD) + ${host_gcc} $(NCI_OBJECTS) $(NCI_HOST_LFLAGS) -o $@ + +$(NCI_INT_)ncitool.o: $(NCI_BASE_)ncitool.c | $(NCI_INT) + $(ECHO_CC) + ${host_gcc} $(NCI_HOST_CFLAGS) -c $< -o $@ + +.PHONY: nci_clean +nci_clean: + -@$(rm) $(NCI_TARGET) $(NCI_OBJECTS) 2>$(NUL) +clean: nci_clean + +# WIN32K.SYS +WIN32K_SVC_DB = $(NCI_BASE_)w32ksvc.db +WIN32K_SERVICE_TABLE = subsys$(SEP)win32k$(SEP)main$(SEP)svctab.c +WIN32K_GDI_STUBS = lib$(SEP)gdi32$(SEP)misc$(SEP)win32k.S +WIN32K_USER_STUBS = lib$(SEP)user32$(SEP)misc$(SEP)win32k.S + +# NTOSKRNL.EXE +KERNEL_SVC_DB = $(NCI_BASE_)sysfuncs.lst +KERNEL_SERVICE_TABLE = include$(SEP)ntdll$(SEP)napi.h +NTDLL_STUBS = lib$(SEP)ntdll$(SEP)napi.S +KERNEL_STUBS = ntoskrnl$(SEP)ex$(SEP)zw.S + +NCI_SERVICE_FILES = \ + $(KERNEL_SERVICE_TABLE) \ + $(WIN32K_SERVICE_TABLE) \ + $(NTDLL_STUBS) \ + $(KERNEL_STUBS) \ + $(WIN32K_GDI_STUBS) \ + $(WIN32K_USER_STUBS) + +$(NCI_SERVICE_FILES): $(NCI_TARGET) + $(ECHO_NCI) + $(Q)$(NCI_TARGET) \ + $(KERNEL_SVC_DB) \ + $(WIN32K_SVC_DB) \ + $(KERNEL_SERVICE_TABLE) \ + $(WIN32K_SERVICE_TABLE) \ + $(NTDLL_STUBS) \ + $(KERNEL_STUBS) \ + $(WIN32K_GDI_STUBS) \ + $(WIN32K_USER_STUBS) + +.PHONY: nci_service_files_clean +nci_service_files_clean: + -@$(rm) $(NCI_SERVICE_FILES) 2>$(NUL) +clean: nci_service_files_clean diff --git a/reactos/tools/rbuild/XML.cpp b/reactos/tools/rbuild/XML.cpp new file mode 100644 index 00000000000..4e86c8f281b --- /dev/null +++ b/reactos/tools/rbuild/XML.cpp @@ -0,0 +1,741 @@ +// XML.cpp + +#include "pch.h" + +#ifdef _MSC_VER +#define MAX_PATH _MAX_PATH +#endif + +#ifdef WIN32 +# include +# include +#else +# include +# define MAX_PATH PATH_MAX +#endif +#include + +#include "XML.h" +#include "exception.h" +#include "ssprintf.h" + +using std::string; +using std::vector; + +#ifdef WIN32 +#define getcwd _getcwd +#endif//WIN32 + +static const char* WS = " \t\r\n"; +static const char* WSEQ = " =\t\r\n"; + +string working_directory; + +XMLIncludes::~XMLIncludes() +{ + for ( size_t i = 0; i < this->size(); i++ ) + delete (*this)[i]; +} + +void +InitWorkingDirectory() +{ + // store the current directory for path calculations + working_directory.resize ( _MAX_PATH ); + working_directory[0] = 0; + getcwd ( &working_directory[0], working_directory.size() ); + working_directory.resize ( strlen ( working_directory.c_str() ) ); +} + +#ifdef _MSC_VER +unsigned __int64 +#else +unsigned long long +#endif +filelen ( FILE* f ) +{ +#ifdef WIN32 + return _filelengthi64 ( _fileno(f) ); +#else + struct stat64 file_stat; + if ( fstat64(fileno(f), &file_stat) != 0 ) + return 0; + return file_stat.st_size; +#endif +} + +Path::Path() +{ + if ( !working_directory.size() ) + InitWorkingDirectory(); + string s ( working_directory ); + const char* p = strtok ( &s[0], "/\\" ); + while ( p ) + { + if ( *p ) + path.push_back ( p ); + p = strtok ( NULL, "/\\" ); + } +} + +Path::Path ( const Path& cwd, const string& file ) +{ + string s ( cwd.Fixup ( file, false ) ); + const char* p = strtok ( &s[0], "/\\" ); + while ( p ) + { + if ( *p ) + path.push_back ( p ); + p = strtok ( NULL, "/\\" ); + } +} + +string +Path::Fixup ( const string& file, bool include_filename ) const +{ + if ( strchr ( "/\\", file[0] ) +#ifdef WIN32 + // this squirreliness is b/c win32 has drive letters and *nix doesn't... + || file[1] == ':' +#endif//WIN32 + ) + { + return file; + } + vector pathtmp ( path ); + string tmp ( file ); + const char* prev = strtok ( &tmp[0], "/\\" ); + const char* p = strtok ( NULL, "/\\" ); + while ( p ) + { + if ( !strcmp ( prev, "." ) ) + ; // do nothing + else if ( !strcmp ( prev, ".." ) ) + { + // this squirreliness is b/c win32 has drive letters and *nix doesn't... +#ifdef WIN32 + if ( pathtmp.size() > 1 ) +#else + if ( pathtmp.size() ) +#endif + pathtmp.resize ( pathtmp.size() - 1 ); + } + else + pathtmp.push_back ( prev ); + prev = p; + p = strtok ( NULL, "/\\" ); + } + if ( include_filename ) + pathtmp.push_back ( prev ); + + // reuse tmp variable to return recombined path + tmp.resize(0); + for ( size_t i = 0; i < pathtmp.size(); i++ ) + { + // this squirreliness is b/c win32 has drive letters and *nix doesn't... +#ifdef WIN32 + if ( i ) tmp += "/"; +#else + tmp += "/"; +#endif + tmp += pathtmp[i]; + } + return tmp; +} + +string +Path::RelativeFromWorkingDirectory () +{ + string out = ""; + for ( size_t i = 0; i < path.size(); i++ ) + { + out += "/" + path[i]; + } + return RelativeFromWorkingDirectory ( out ); +} + +string +Path::RelativeFromWorkingDirectory ( const string& path ) +{ + vector vwork, vpath, vout; + Path::Split ( vwork, working_directory, true ); + Path::Split ( vpath, path, true ); +#ifdef WIN32 + // this squirreliness is b/c win32 has drive letters and *nix doesn't... + // not possible to do relative across different drive letters + if ( vwork[0] != vpath[0] ) + return path; +#endif + size_t i = 0; + while ( i < vwork.size() && i < vpath.size() && vwork[i] == vpath[i] ) + ++i; + if ( i < vwork.size() ) + { + // path goes above our working directory, we will need some ..'s + for ( size_t j = 0; j < i; j++ ) + vout.push_back ( ".." ); + } + while ( i < vpath.size() ) + vout.push_back ( vpath[i++] ); + + // now merge vout into a string again + string out = vout[0]; + for ( i = 1; i < vout.size(); i++ ) + { + out += "/" + vout[i]; + } + return out; +} + +void +Path::Split ( vector& out, + const string& path, + bool include_last ) +{ + string s ( path ); + const char* prev = strtok ( &s[0], "/\\" ); + const char* p = strtok ( NULL, "/\\" ); + out.resize ( 0 ); + while ( p ) + { + out.push_back ( prev ); + prev = p; + p = strtok ( NULL, "/\\" ); + } + if ( include_last ) + out.push_back ( prev ); +} + +XMLFile::XMLFile() +{ +} + +void +XMLFile::close() +{ + _buf.resize(0); + _p = _end = NULL; +} + +bool +XMLFile::open(const string& filename_) +{ + close(); + FILE* f = fopen ( filename_.c_str(), "rb" ); + if ( !f ) + return false; + unsigned long len = (unsigned long)filelen(f); + _buf.resize ( len ); + fread ( &_buf[0], 1, len, f ); + fclose ( f ); + _p = _buf.c_str(); + _end = _p + len; + _filename = filename_; + next_token(); + return true; +} + +// next_token() moves the pointer to next token, which may be +// an xml element or a text element, basically it's a glorified +// skipspace, normally the user of this class won't need to call +// this function +void +XMLFile::next_token() +{ + _p += strspn ( _p, WS ); +} + +bool +XMLFile::next_is_text() +{ + return *_p != '<'; +} + +bool +XMLFile::more_tokens() +{ + return _p != _end; +} + +// get_token() is used to return a token, and move the pointer +// past the token +bool +XMLFile::get_token(string& token) +{ + const char* tokend; + if ( !strncmp ( _p, "" ); + if ( !tokend ) + tokend = _end; + else + tokend += 3; + } + else if ( !strncmp ( _p, "" ); + if ( !tokend ) + tokend = _end; + else + tokend += 2; + } + else if ( *_p == '<' ) + { + tokend = strchr ( _p, '>' ); + if ( !tokend ) + tokend = _end; + else + ++tokend; + } + else + { + tokend = strchr ( _p, '<' ); + if ( !tokend ) + tokend = _end; + while ( tokend > _p && isspace(tokend[-1]) ) + --tokend; + } + if ( tokend == _p ) + return false; + token = string ( _p, tokend-_p ); + _p = tokend; + next_token(); + return true; +} + +string +XMLFile::Location() const +{ + int line = 1; + const char* p = strchr ( _buf.c_str(), '\n' ); + while ( p && p < _p ) + { + ++line; + p = strchr ( p+1, '\n' ); + } + return ssprintf ( "%s(%i)",_filename.c_str(), line ); +} + +XMLAttribute::XMLAttribute() +{ +} + +XMLAttribute::XMLAttribute(const string& name_, + const string& value_) + : name(name_), value(value_) +{ +} + +XMLAttribute::XMLAttribute ( const XMLAttribute& src ) + : name(src.name), value(src.value) +{ + +} + +XMLAttribute& XMLAttribute::operator = ( const XMLAttribute& src ) +{ + name = src.name; + value = src.value; + return *this; +} + +XMLElement::XMLElement ( XMLFile* xmlFile, + const string& location ) + : xmlFile ( xmlFile ), + location ( location ), + parentElement ( NULL ) +{ +} + +XMLElement::~XMLElement() +{ + size_t i; + for ( i = 0; i < attributes.size(); i++ ) + delete attributes[i]; + for ( i = 0; i < subElements.size(); i++ ) + delete subElements[i]; +} + +void +XMLElement::AddSubElement ( XMLElement* e ) +{ + subElements.push_back ( e ); + e->parentElement = this; +} + +// Parse() +// This function takes a single xml tag ( i.e. beginning with '<' and +// ending with '>', and parses out it's tag name and constituent +// attributes. +// Return Value: returns true if you need to look for a for +// the one it just parsed... +bool +XMLElement::Parse(const string& token, + bool& end_tag) +{ + const char* p = token.c_str(); + assert ( *p == '<' ); + ++p; + p += strspn ( p, WS ); + + // check if this is a comment + if ( !strncmp ( p, "!--", 3 ) ) + { + name = "!--"; + end_tag = false; + return false; // never look for end tag to a comment + } + + end_tag = ( *p == '/' ); + if ( end_tag ) + { + ++p; + p += strspn ( p, WS ); + } + const char* end = strpbrk ( p, WS ); + if ( !end ) + { + end = strpbrk ( p, "/>" ); + assert ( end ); + } + name = string ( p, end-p ); + p = end; + p += strspn ( p, WS ); + while ( *p != '>' && *p != '/' ) + { + end = strpbrk ( p, WSEQ ); + if ( !end ) + { + end = strpbrk ( p, "/>" ); + assert ( end ); + } + string attribute ( p, end-p ), value; + p = end; + p += strspn ( p, WS ); + if ( *p == '=' ) + { + ++p; + p += strspn ( p, WS ); + char quote = 0; + if ( strchr ( "\"'", *p ) ) + { + quote = *p++; + end = strchr ( p, quote ); + } + else + { + end = strpbrk ( p, WS ); + } + if ( !end ) + { + end = strchr ( p, '>' ); + assert(end); + if ( end[-1] == '/' ) + end--; + } + value = string ( p, end-p ); + p = end; + if ( quote && *p == quote ) + p++; + p += strspn ( p, WS ); + } + else if ( name[0] != '!' ) + { + throw XMLSyntaxErrorException ( location, + "attributes must have values" ); + } + attributes.push_back ( new XMLAttribute ( attribute, value ) ); + } + return !( *p == '/' ) && !end_tag; +} + +XMLAttribute* +XMLElement::GetAttribute ( const string& attribute, + bool required ) +{ + // this would be faster with a tree-based container, but our attribute + // lists are likely to stay so short as to not be an issue. + for ( size_t i = 0; i < attributes.size(); i++ ) + { + if ( attribute == attributes[i]->name ) + return attributes[i]; + } + if ( required ) + { + throw RequiredAttributeNotFoundException ( location, + attribute, + name ); + } + return NULL; +} + +const XMLAttribute* +XMLElement::GetAttribute ( const string& attribute, + bool required ) const +{ + // this would be faster with a tree-based container, but our attribute + // lists are likely to stay so short as to not be an issue. + for ( size_t i = 0; i < attributes.size(); i++ ) + { + if ( attribute == attributes[i]->name ) + return attributes[i]; + } + if ( required ) + { + throw RequiredAttributeNotFoundException ( location, + attribute, + name ); + } + return NULL; +} + +// XMLParse() +// This function reads a "token" from the file loaded in XMLFile +// if it finds a tag that is non-singular, it parses sub-elements and/or +// inner text into the XMLElement that it is building to return. +// Return Value: an XMLElement allocated via the new operator that contains +// it's parsed data. Keep calling this function until it returns NULL +// (no more data) +XMLElement* +XMLParse ( XMLFile& f, + XMLIncludes* includes, + const Path& path, + bool* pend_tag = NULL ) +{ + string token; + if ( !f.get_token(token) ) + return NULL; + bool end_tag, is_include = false; + + while ( token[0] != '<' + || !strncmp ( token.c_str (), "0) + f += ' '; + if (sign) + f += sign; + if (type & SPECIAL) + { + if (base==8) + f += '0'; + else if (base==16) + { + f += '0'; + f += digits[33]; + } + } + if (!(type & LEFT)) + { + while (size-- > 0) + f += c; + } + while (i < precision--) + { + f += '0'; + } + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += ' '; + } + return true; +} + +static bool +wnumber(std::wstring& f, LONGLONG num, int base, int size, int precision ,int type) +{ + wchar_t c,sign,tmp[66]; + const wchar_t *digits = L"0123456789abcdefghijklmnopqrstuvwxyz"; + int i; + + if (type & LARGE) + digits = L"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + if (type & LEFT) + type &= ~ZEROPAD; + if (base < 2 || base > 36) + return 0; + c = (type & ZEROPAD) ? L'0' : L' '; + sign = 0; + if (type & SIGN) { + if (num < 0) { + sign = L'-'; + num = -num; + size--; + } else if (type & PLUS) { + sign = L'+'; + size--; + } else if (type & SPACE) { + sign = L' '; + size--; + } + } + if (type & SPECIAL) { + if (base == 16) + size -= 2; + else if (base == 8) + size--; + } + i = 0; + if (num == 0) + tmp[i++]=L'0'; + else while (num != 0) + tmp[i++] = digits[do_div(&num,base)]; + if (i > precision) + precision = i; + size -= precision; + if (!(type&(ZEROPAD+LEFT))) + while(size-->0) + f += L' '; + if (sign) + f += sign; + if (type & SPECIAL) + { + if (base==8) + f += L'0'; + else if (base==16) + { + f += L'0'; + f += digits[33]; + } + } + if (!(type & LEFT)) + { + while (size-- > 0) + f += c; + } + while (i < precision--) + { + f += L'0'; + } + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += L' '; + } + return true; +} + + +static bool +numberf(std::string& f, double __n, char exp_sign, int size, int precision, int type) +{ + double exponent = 0.0; + double e; + long ie; + + //int x; + char *buf, *tmp; + int i = 0; + int j = 0; + //int k = 0; + + double frac, intr; + double p; + char sign; + char c; + char ro = 0; + int result; + + union + { + double* __n; + ieee_double_t* n; + } n; + + n.__n = &__n; + + if ( exp_sign == 'g' || exp_sign == 'G' || exp_sign == 'e' || exp_sign == 'E' ) { + ie = ((unsigned int)n.n->exponent - (unsigned int)0x3ff); + exponent = ie/3.321928; + } + + if ( exp_sign == 'g' || exp_sign == 'G' ) { + type |= ZEROTRUNC; + if ( exponent < -4 || fabs(exponent) >= precision ) + exp_sign -= 2; // g -> e and G -> E + } + + if ( exp_sign == 'e' || exp_sign == 'E' ) { + frac = modf(exponent,&e); + if ( frac > 0.5 ) + e++; + else if ( frac < -0.5 ) + e--; + + result = numberf(f,__n/pow(10.0L,e),'f',size-4, precision, type); + if (result < 0) + return false; + f += exp_sign; + size--; + ie = (long)e; + type = LEFT | PLUS; + if ( ie < 0 ) + type |= SIGN; + + result = number(f,ie, 10,2, 2,type ); + if (result < 0) + return false; + return true; + } + + if ( exp_sign == 'f' ) { + buf = (char*)alloca(4096); + if (type & LEFT) { + type &= ~ZEROPAD; + } + + c = (type & ZEROPAD) ? '0' : ' '; + sign = 0; + if (type & SIGN) { + if (__n < 0) { + sign = '-'; + __n = fabs(__n); + size--; + } else if (type & PLUS) { + sign = '+'; + size--; + } else if (type & SPACE) { + sign = ' '; + size--; + } + } + + frac = modf(__n,&intr); + + // # flags forces a . and prevents trucation of trailing zero's + + if ( precision > 0 ) { + //frac = modfl(__n,&intr); + i = precision-1; + while ( i >= 0 ) { + frac*=10.0L; + frac = modf(frac, &p); + buf[i] = (int)p + '0'; + i--; + } + i = precision; + size -= precision; + + ro = 0; + if ( frac > 0.5 ) { + ro = 1; + } + + if ( precision >= 1 || type & SPECIAL) { + buf[i++] = '.'; + size--; + } + } + + if ( intr == 0.0 ) { + buf[i++] = '0'; + size--; + } + else { + while ( intr > 0.0 ) { + p = intr; + intr/=10.0L; + modf(intr, &intr); + + p -= 10.0*intr; + + buf[i++] = (int)p + '0'; + size--; + } + } + + j = 0; + while ( j < i && ro == 1) { + if ( buf[j] >= '0' && buf[j] <= '8' ) { + buf[j]++; + ro = 0; + } + else if ( buf[j] == '9' ) { + buf[j] = '0'; + } + j++; + } + if ( ro == 1 ) + buf[i++] = '1'; + + buf[i] = 0; + + size -= precision; + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += ' '; + } + if (sign) + { + f += sign; + } + + if (!(type&(ZEROPAD+LEFT))) + while(size-->0) + { + f += ' '; + } + if (type & SPECIAL) { + } + + if (!(type & LEFT)) + while (size-- > 0) + { + f += c; + } + + tmp = buf; + if ( type & ZEROTRUNC && ((type & SPECIAL) != SPECIAL) ) + { + j = 0; + while ( j < i && ( *tmp == '0' || *tmp == '.' )) + { + tmp++; + i--; + } + } +// else +// while (i < precision--) +// putc('0', f); + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += ' '; + } + } + return true; +} + +static bool +wnumberf(std::wstring& f, double __n, wchar_t exp_sign, int size, int precision, int type) +{ + double exponent = 0.0; + double e; + long ie; + + int i = 0; + int j = 0; + + double frac, intr; + double p; + wchar_t *buf, *tmp, sign, c, ro = 0; + int result; + + union + { + double* __n; + ieee_double_t* n; + } n; + + n.__n = &__n; + + if ( exp_sign == L'g' || exp_sign == L'G' || exp_sign == L'e' || exp_sign == L'E' ) { + ie = ((unsigned int)n.n->exponent - (unsigned int)0x3ff); + exponent = ie/3.321928; + } + + if ( exp_sign == L'g' || exp_sign == L'G' ) + { + type |= ZEROTRUNC; + if ( exponent < -4 || fabs(exponent) >= precision ) + exp_sign -= 2; // g -> e and G -> E + } + + if ( exp_sign == L'e' || exp_sign == L'E' ) + { + frac = modf(exponent,&e); + if ( frac > 0.5 ) + e++; + else if ( frac < -0.5 ) + e--; + + result = wnumberf(f,__n/pow(10.0L,e),L'f',size-4, precision, type); + if (result < 0) + return false; + f += exp_sign; + size--; + ie = (long)e; + type = LEFT | PLUS; + if ( ie < 0 ) + type |= SIGN; + + result = wnumber(f,ie, 10,2, 2,type ); + if (result < 0) + return false; + return true; + } + + if ( exp_sign == L'f' ) + { + buf = (wchar_t*)alloca(4096*sizeof(wchar_t)); + if (type & LEFT) + type &= ~ZEROPAD; + + c = (type & ZEROPAD) ? L'0' : L' '; + sign = 0; + if (type & SIGN) + { + if (__n < 0) + { + sign = L'-'; + __n = fabs(__n); + size--; + } + else if (type & PLUS) + { + sign = L'+'; + size--; + } + else if (type & SPACE) + { + sign = L' '; + size--; + } + } + + frac = modf(__n,&intr); + + // # flags forces a . and prevents trucation of trailing zero's + + if ( precision > 0 ) { + //frac = modfl(__n,&intr); + i = precision-1; + while ( i >= 0 ) { + frac*=10.0L; + frac = modf(frac, &p); + buf[i] = (int)p + L'0'; + i--; + } + i = precision; + size -= precision; + + ro = 0; + if ( frac > 0.5 ) { + ro = 1; + } + + if ( precision >= 1 || type & SPECIAL) { + buf[i++] = L'.'; + size--; + } + } + + if ( intr == 0.0 ) { + buf[i++] = L'0'; + size--; + } + else { + while ( intr > 0.0 ) { + p = intr; + intr/=10.0L; + modf(intr, &intr); + + p -= 10.0*intr; + + buf[i++] = (int)p + L'0'; + size--; + } + } + + j = 0; + while ( j < i && ro == 1) { + if ( buf[j] >= L'0' && buf[j] <= L'8' ) { + buf[j]++; + ro = 0; + } + else if ( buf[j] == L'9' ) { + buf[j] = L'0'; + } + j++; + } + if ( ro == 1 ) + buf[i++] = L'1'; + + buf[i] = 0; + + size -= precision; + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += L' '; + } + if (sign) + { + f += sign; + } + + if (!(type&(ZEROPAD+LEFT))) + while(size-->0) + { + f += L' '; + } + if (type & SPECIAL) { + } + + if (!(type & LEFT)) + while (size-- > 0) + { + f += c; + } + + tmp = buf; + if ( type & ZEROTRUNC && ((type & SPECIAL) != SPECIAL) ) + { + j = 0; + while ( j < i && ( *tmp == L'0' || *tmp == L'.' )) + { + tmp++; + i--; + } + } + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += L' '; + } + } + return true; +} + +static bool +numberfl(std::string& f, long double __n, char exp_sign, int size, int precision, int type) +{ + long double exponent = 0.0; + long double e; + long ie; + + //int x; + char *buf, *tmp; + int i = 0; + int j = 0; + //int k = 0; + + long double frac, intr; + long double p; + char sign; + char c; + char ro = 0; + + int result; + + union + { + long double* __n; + ieee_long_double_t* n; + } n; + + n.__n = &__n; + + if ( exp_sign == 'g' || exp_sign == 'G' || exp_sign == 'e' || exp_sign == 'E' ) { + ie = ((unsigned int)n.n->exponent - (unsigned int)0x3fff); + exponent = ie/3.321928; + } + + if ( exp_sign == 'g' || exp_sign == 'G' ) { + type |= ZEROTRUNC; + if ( exponent < -4 || fabs(exponent) >= precision ) + exp_sign -= 2; // g -> e and G -> E + } + + if ( exp_sign == 'e' || exp_sign == 'E' ) { + frac = modfl(exponent,&e); + if ( frac > 0.5 ) + e++; + else if ( frac < -0.5 ) + e--; + + result = numberf(f,__n/powl(10.0L,e),'f',size-4, precision, type); + if (result < 0) + return false; + f += exp_sign; + size--; + ie = (long)e; + type = LEFT | PLUS; + if ( ie < 0 ) + type |= SIGN; + + result = number(f,ie, 10,2, 2,type ); + if (result < 0) + return false; + return true; + } + + if ( exp_sign == 'f' ) + { + + buf = (char*)alloca(4096); + if (type & LEFT) + { + type &= ~ZEROPAD; + } + + c = (type & ZEROPAD) ? '0' : ' '; + sign = 0; + if (type & SIGN) + { + if (__n < 0) + { + sign = '-'; + __n = fabs(__n); + size--; + } else if (type & PLUS) + { + sign = '+'; + size--; + } else if (type & SPACE) + { + sign = ' '; + size--; + } + } + + frac = modfl(__n,&intr); + + // # flags forces a . and prevents trucation of trailing zero's + if ( precision > 0 ) + { + //frac = modfl(__n,&intr); + + i = precision-1; + while ( i >= 0 ) + { + frac*=10.0L; + frac = modfl((long double)frac, &p); + buf[i] = (int)p + '0'; + i--; + } + i = precision; + size -= precision; + + ro = 0; + if ( frac > 0.5 ) + { + ro = 1; + } + + if ( precision >= 1 || type & SPECIAL) + { + buf[i++] = '.'; + size--; + } + } + + if ( intr == 0.0 ) + { + buf[i++] = '0'; + size--; + } + else + { + while ( intr > 0.0 ) + { + p=intr; + intr/=10.0L; + modfl(intr, &intr); + + p -= 10.0L*intr; + + buf[i++] = (int)p + '0'; + size--; + } + } + + j = 0; + while ( j < i && ro == 1) { + if ( buf[j] >= '0' && buf[j] <= '8' ) + { + buf[j]++; + ro = 0; + } + else if ( buf[j] == '9' ) + { + buf[j] = '0'; + } + j++; + } + if ( ro == 1 ) + buf[i++] = '1'; + + buf[i] = 0; + + size -= precision; + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += ' '; + } + if (sign) + { + f += sign; + } + + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += ' '; + } + if (type & SPECIAL) { + } + + if (!(type & LEFT)) + while (size-- > 0) + { + f += c; + } + tmp = buf; + if ( type & ZEROTRUNC && ((type & SPECIAL) != SPECIAL) ) + { + j = 0; + while ( j < i && ( *tmp == '0' || *tmp == '.' )) + { + tmp++; + i--; + } + } + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += ' '; + } + } + return true; +} + +static bool +wnumberfl(std::wstring& f, long double __n, wchar_t exp_sign, int size, int precision, int type) +{ + long double exponent = 0.0; + long double e; + long ie; + + wchar_t *buf, *tmp, sign, c, ro = 0; + int i = 0; + int j = 0; + + long double frac, intr; + long double p; + + int result; + + union + { + long double* __n; + ieee_long_double_t* n; + } n; + + n.__n = &__n; + + if ( exp_sign == L'g' || exp_sign == L'G' || exp_sign == L'e' || exp_sign == L'E' ) { + ie = ((unsigned int)n.n->exponent - (unsigned int)0x3fff); + exponent = ie/3.321928; + } + + if ( exp_sign == L'g' || exp_sign == L'G' ) { + type |= ZEROTRUNC; + if ( exponent < -4 || fabs(exponent) >= precision ) + exp_sign -= 2; // g -> e and G -> E + } + + if ( exp_sign == L'e' || exp_sign == L'E' ) { + frac = modfl(exponent,&e); + if ( frac > 0.5 ) + e++; + else if ( frac < -0.5 ) + e--; + + result = wnumberf(f,__n/powl(10.0L,e),L'f',size-4, precision, type); + if (result < 0) + return false; + f += exp_sign; + size--; + ie = (long)e; + type = LEFT | PLUS; + if ( ie < 0 ) + type |= SIGN; + + result = wnumber(f,ie, 10,2, 2,type ); + if (result < 0) + return false; + return true; + } + + if ( exp_sign == L'f' ) + { + + buf = (wchar_t*)alloca(4096*sizeof(wchar_t)); + if (type & LEFT) + { + type &= ~ZEROPAD; + } + + c = (type & ZEROPAD) ? L'0' : L' '; + sign = 0; + if (type & SIGN) + { + if (__n < 0) + { + sign = L'-'; + __n = fabs(__n); + size--; + } else if (type & PLUS) + { + sign = L'+'; + size--; + } else if (type & SPACE) + { + sign = L' '; + size--; + } + } + + frac = modfl(__n,&intr); + + // # flags forces a . and prevents trucation of trailing zero's + if ( precision > 0 ) + { + //frac = modfl(__n,&intr); + + i = precision-1; + while ( i >= 0 ) + { + frac*=10.0L; + frac = modfl((long double)frac, &p); + buf[i] = (int)p + L'0'; + i--; + } + i = precision; + size -= precision; + + ro = 0; + if ( frac > 0.5 ) + { + ro = 1; + } + + if ( precision >= 1 || type & SPECIAL) + { + buf[i++] = L'.'; + size--; + } + } + + if ( intr == 0.0 ) + { + buf[i++] = L'0'; + size--; + } + else + { + while ( intr > 0.0 ) + { + p=intr; + intr/=10.0L; + modfl(intr, &intr); + + p -= 10.0L*intr; + + buf[i++] = (int)p + L'0'; + size--; + } + } + + j = 0; + while ( j < i && ro == 1) { + if ( buf[j] >= L'0' && buf[j] <= L'8' ) + { + buf[j]++; + ro = 0; + } + else if ( buf[j] == L'9' ) + { + buf[j] = L'0'; + } + j++; + } + if ( ro == 1 ) + buf[i++] = L'1'; + + buf[i] = 0; + + size -= precision; + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += L' '; + } + if (sign) + { + f += sign; + } + + if (!(type&(ZEROPAD+LEFT))) + { + while(size-->0) + f += L' '; + } + if (type & SPECIAL) { + } + + if (!(type & LEFT)) + while (size-- > 0) + { + f += c; + } + tmp = buf; + if ( type & ZEROTRUNC && ((type & SPECIAL) != SPECIAL) ) + { + j = 0; + while ( j < i && ( *tmp == L'0' || *tmp == L'.' )) + { + tmp++; + i--; + } + } + while (i-- > 0) + { + f += tmp[i]; + } + while (size-- > 0) + { + f += L' '; + } + } + return true; +} + +static int +do_string(std::string& f, const char* s, int len, int field_width, int precision, int flags) +{ + int i, done = 0; + if (s == NULL) + { + s = ""; + len = 6; + } + else + { + if (len == -1) + { + len = 0; + while ((unsigned int)len < (unsigned int)precision && s[len]) + len++; + } + else + { + if ((unsigned int)len > (unsigned int)precision) + len = precision; + } + } + if (!(flags & LEFT)) + while (len < field_width--) + { + f += ' '; + done++; + } + for (i = 0; i < len; ++i) + { + f += *s++; + done++; + } + while (len < field_width--) + { + f += ' '; + done++; + } + return done; +} + +static int +do_wstring(std::wstring& f, const wchar_t* s, int len, int field_width, int precision, int flags) +{ + int i, done = 0; + if (s == NULL) + { + s = L""; + len = 6; + } + else + { + if (len == -1) + { + len = 0; + while ((unsigned int)len < (unsigned int)precision && s[len]) + len++; + } + else + { + if ((unsigned int)len > (unsigned int)precision) + len = precision; + } + } + if (!(flags & LEFT)) + while (len < field_width--) + { + f += L' '; + done++; + } + for (i = 0; i < len; ++i) + { + f += *s++; + done++; + } + while (len < field_width--) + { + f += L' '; + done++; + } + return done; +} + +static int +stringw(std::string& f, const wchar_t* sw, int len, int field_width, int precision, int flags) +{ + int i, done = 0; + if (sw == NULL) + { + sw = L""; + len = 6; + } + else + { + if (len == -1) + { + len = 0; + while ((unsigned int)len < (unsigned int)precision && sw[len]) + len++; + } + else + { + if ((unsigned int)len > (unsigned int)precision) + len = precision; + } + } + if (!(flags & LEFT)) + while (len < field_width--) + { + f += ' '; + done++; + } + for (i = 0; i < len; ++i) + { +#define MY_MB_CUR_MAX 1 + char mb[MY_MB_CUR_MAX]; + int mbcount, j; + mbcount = wctomb(mb, *sw++); + if (mbcount <= 0) + { + break; + } + for (j = 0; j < mbcount; j++) + { + f += mb[j]; + done++; + } + } + while (len < field_width--) + { + f += ' '; + done++; + } + return done; +} + +static int +wstringa(std::wstring& f, const char* sa, int len, int field_width, int precision, int flags) +{ + int i, done = 0; + if (sa == NULL) + { + sa = ""; + len = 6; + } + else + { + if (len == -1) + { + len = 0; + while ((unsigned int)len < (unsigned int)precision && sa[len]) + len++; + } + else + { + if ((unsigned int)len > (unsigned int)precision) + len = precision; + } + } + if (!(flags & LEFT)) + while (len < field_width--) + { + f += L' '; + done++; + } + for (i = 0; i < len;) + { + wchar_t w; + int mbcount; + mbcount = mbtowc(&w, sa, len-i); + if (mbcount <= 0) + break; + f += w; + done++; + i += mbcount; + } + while (len < field_width--) + { + f += L' '; + done++; + } + return done; +} + +#define _isnanl _isnan +#define _finitel _finite + +std::string +ssvprintf ( const char *fmt, va_list args ) +{ + ULONGLONG num; + int base; + long double _ldouble; + double _double; + const char *s; + const wchar_t* sw; + int result; + std::string f; + + int flags; /* flags to number() */ + + int field_width; /* width of output field */ + int precision; /* min. # of digits for integers; max + number of chars for from string */ + int qualifier = 0; /* 'h', 'l', 'L' or 'I64' for integer fields */ + + for (; *fmt ; ++fmt) + { + if (*fmt != '%') + { + f += *fmt; + continue; + } + + /* process flags */ + flags = 0; + repeat: + ++fmt; /* this also skips first '%' */ + switch (*fmt) { + case '-': flags |= LEFT; goto repeat; + case '+': flags |= PLUS; goto repeat; + case ' ': flags |= SPACE; goto repeat; + case '#': flags |= SPECIAL; goto repeat; + case '0': flags |= ZEROPAD; goto repeat; + } + + /* get field width */ + field_width = -1; + if (isdigit(*fmt)) + field_width = skip_atoi(&fmt); + else if (*fmt == '*') { + ++fmt; + /* it's the next argument */ + field_width = va_arg(args, int); + if (field_width < 0) { + field_width = -field_width; + flags |= LEFT; + } + } + + /* get the precision */ + precision = -1; + if (*fmt == '.') { + ++fmt; + if (isdigit(*fmt)) + precision = skip_atoi(&fmt); + else if (*fmt == '*') { + ++fmt; + /* it's the next argument */ + precision = va_arg(args, int); + } + if (precision < 0) + precision = 0; + } + + /* get the conversion qualifier */ + qualifier = 0; + // %Z can be just stand alone or as size_t qualifier + if ( *fmt == 'Z' ) { + qualifier = *fmt; + switch ( *(fmt+1)) { + case 'o': + case 'b': + case 'X': + case 'x': + case 'd': + case 'i': + case 'u': + ++fmt; + break; + default: + break; + } + } else if (*fmt == 'h' || *fmt == 'l' || *fmt == 'L' || *fmt == 'w') { + qualifier = *fmt; + ++fmt; + } else if (*fmt == 'I' && *(fmt+1) == '6' && *(fmt+2) == '4') { + qualifier = *fmt; + fmt += 3; + } + + // go fine with ll instead of L + if ( *fmt == 'l' ) { + ++fmt; + qualifier = 'L'; + } + + /* default base */ + base = 10; + + switch (*fmt) { + case 'c': + if (!(flags & LEFT)) + while (--field_width > 0) + { + f += ' '; + } + if (qualifier == 'l' || qualifier == 'w') + { + f += (char)(unsigned char)(wchar_t) va_arg(args,int); + } + else + { + f += (char)(unsigned char) va_arg(args,int); + } + while (--field_width > 0) + { + f += ' '; + } + continue; + + case 'C': + if (!(flags & LEFT)) + while (--field_width > 0) + { + f += ' '; + } + if (qualifier == 'h') + { + f += (char)(unsigned char) va_arg(args,int); + } + else + { + f += (char)(unsigned char)(wchar_t) va_arg(args,int); + } + while (--field_width > 0) + { + f += ' '; + } + continue; + + case 's': + if (qualifier == 'l' || qualifier == 'w') { + /* print unicode string */ + sw = va_arg(args, wchar_t *); + result = stringw(f, sw, -1, field_width, precision, flags); + } else { + /* print ascii string */ + s = va_arg(args, char *); + result = do_string(f, s, -1, field_width, precision, flags); + } + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + case 'S': + if (qualifier == 'h') { + /* print ascii string */ + s = va_arg(args, char *); + result = do_string(f, s, -1, field_width, precision, flags); + } else { + /* print unicode string */ + sw = va_arg(args, wchar_t *); + result = stringw(f, sw, -1, field_width, precision, flags); + } + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + /*case 'Z': + if (qualifier == 'w') { + // print counted unicode string + PUNICODE_STRING pus = va_arg(args, PUNICODE_STRING); + if ((pus == NULL) || (pus->Buffer == NULL)) { + sw = NULL; + len = -1; + } else { + sw = pus->Buffer; + len = pus->Length / sizeof(WCHAR); + } + result = stringw(f, sw, len, field_width, precision, flags); + } else { + // print counted ascii string + PANSI_STRING pas = va_arg(args, PANSI_STRING); + if ((pas == NULL) || (pas->Buffer == NULL)) { + s = NULL; + len = -1; + } else { + s = pas->Buffer; + len = pas->Length; + } + result = string(f, s, -1, field_width, precision, flags); + } + if (result < 0) + return -1; + continue;*/ + + case 'e': + case 'E': + case 'f': + case 'g': + case 'G': + if (qualifier == 'l' || qualifier == 'L' ) { + _ldouble = va_arg(args, long double); + + if ( _isnanl(_ldouble) ) + { + f += "Nan"; + } + else if ( !_finitel(_ldouble) ) + { + if ( _ldouble < 0 ) + f += "-Inf"; + else + f += "+Inf"; + } else { + if ( precision == -1 ) + precision = 6; + result = numberfl(f,_ldouble,*fmt,field_width,precision,flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + } else { + _double = (double)va_arg(args, double); + + if ( _isnan(_double) ) + { + f += "Nan"; + } + else if ( !_finite(_double) ) + { + if ( _double < 0 ) + f += "-Inf"; + else + f += "+Inf"; + } + else + { + if ( precision == -1 ) + precision = 6; + result = numberf(f,_double,*fmt,field_width,precision,flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + } + continue; + + case 'p': + if (field_width == -1) { + field_width = 2*sizeof(void *); + flags |= ZEROPAD; + } + result = number(f, + (unsigned long) va_arg(args, void *), 16, + field_width, precision, flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + case 'n': + if (qualifier == 'l') { + long * ip = va_arg(args, long *); + *ip = 0; + } else { + int * ip = va_arg(args, int *); + *ip = 0; + } + continue; + + /* integer number formats - set up the flags and "break" */ + case 'o': + base = 8; + break; + + case 'b': + base = 2; + break; + + case 'X': + flags |= LARGE; + case 'x': + base = 16; + break; + + case 'd': + case 'i': + flags |= SIGN; + case 'u': + break; + + default: + if (*fmt != '%') + { + f += '%'; + } + if (*fmt) + { + f += *fmt; + } + else + --fmt; + continue; + } + + if (qualifier == 'I') + num = va_arg(args, ULONGLONG); + else if (qualifier == 'l') { + if (flags & SIGN) + num = va_arg(args, long); + else + num = va_arg(args, unsigned long); + } + else if (qualifier == 'h') { + if (flags & SIGN) + num = va_arg(args, int); + else + num = va_arg(args, unsigned int); + } + else if (flags & SIGN) + num = va_arg(args, int); + else + num = va_arg(args, unsigned int); + result = number(f, num, base, field_width, precision, flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + //putc('\0',f); + return f; +} + +std::wstring +sswvprintf ( const wchar_t* fmt, va_list args ) +{ + ULONGLONG num; + int base; + long double _ldouble; + double _double; + const wchar_t* s; + const char* sa; + int result; + std::wstring f; + + int flags; /* flags to number() */ + + int field_width; /* width of output field */ + int precision; /* min. # of digits for integers; max + number of chars for from string */ + int qualifier = 0; /* 'h', 'l', 'L' or 'I64' for integer fields */ + + for (; *fmt ; ++fmt) + { + if (*fmt != L'%') + { + f += *fmt; + continue; + } + + /* process flags */ + flags = 0; + repeat: + ++fmt; /* this also skips first '%' */ + switch (*fmt) { + case L'-': flags |= LEFT; goto repeat; + case L'+': flags |= PLUS; goto repeat; + case L' ': flags |= SPACE; goto repeat; + case L'#': flags |= SPECIAL; goto repeat; + case L'0': flags |= ZEROPAD; goto repeat; + } + + /* get field width */ + field_width = -1; + if (isdigit(*fmt)) + field_width = skip_wtoi(&fmt); + else if (*fmt == L'*') { + ++fmt; + /* it's the next argument */ + field_width = va_arg(args, int); + if (field_width < 0) { + field_width = -field_width; + flags |= LEFT; + } + } + + /* get the precision */ + precision = -1; + if (*fmt == L'.') { + ++fmt; + if (iswdigit(*fmt)) + precision = skip_wtoi(&fmt); + else if (*fmt == L'*') { + ++fmt; + /* it's the next argument */ + precision = va_arg(args, int); + } + if (precision < 0) + precision = 0; + } + + /* get the conversion qualifier */ + qualifier = 0; + // %Z can be just stand alone or as size_t qualifier + if ( *fmt == L'Z' ) { + qualifier = *fmt; + switch ( *(fmt+1)) { + case L'o': + case L'b': + case L'X': + case L'x': + case L'd': + case L'i': + case L'u': + ++fmt; + break; + default: + break; + } + } else if (*fmt == L'h' || *fmt == L'l' || *fmt == L'L' || *fmt == L'w') { + qualifier = *fmt; + ++fmt; + } else if (*fmt == L'I' && *(fmt+1) == L'6' && *(fmt+2) == L'4') { + qualifier = *fmt; + fmt += 3; + } + + // go fine with ll instead of L + if ( *fmt == L'l' ) { + ++fmt; + qualifier = L'L'; + } + + /* default base */ + base = 10; + + switch (*fmt) { + case L'c': + if (!(flags & LEFT)) + while (--field_width > 0) + { + f += L' '; + } + if ( qualifier == L'h' ) + { + f += (wchar_t)(char)(unsigned char) va_arg(args,int); + } + else + { + f += (wchar_t) va_arg(args,int); + } + while (--field_width > 0) + { + f += ' '; + } + continue; + + case 'C': + if (!(flags & LEFT)) + while (--field_width > 0) + { + f += L' '; + } + if (qualifier == L'l' || qualifier == L'w') + { + f += (wchar_t) va_arg(args,int); + } + else + { + f += (wchar_t)(char)(unsigned char) va_arg(args,int); + } + while (--field_width > 0) + { + f += L' '; + } + continue; + + case 's': + if (qualifier == L'h') { + /* print ascii string */ + sa = va_arg(args, char *); + result = wstringa(f, sa, -1, field_width, precision, flags); + } else { + /* print unicode string */ + s = va_arg(args, wchar_t *); + result = do_wstring(f, s, -1, field_width, precision, flags); + } + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + case 'S': + if (qualifier == L'l' || qualifier == L'w') { + /* print unicode string */ + s = va_arg(args, wchar_t *); + result = do_wstring(f, s, -1, field_width, precision, flags); + } else { + /* print ascii string */ + sa = va_arg(args, char *); + result = wstringa(f, sa, -1, field_width, precision, flags); + } + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + case L'e': + case L'E': + case L'f': + case L'g': + case L'G': + if (qualifier == L'l' || qualifier == L'L' ) + { + _ldouble = va_arg(args, long double); + + if ( _isnanl(_ldouble) ) + { + f += L"Nan"; + } + else if ( !_finitel(_ldouble) ) + { + if ( _ldouble < 0 ) + f += L"-Inf"; + else + f += L"+Inf"; + } else { + if ( precision == -1 ) + precision = 6; + result = wnumberfl(f,_ldouble,*fmt,field_width,precision,flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + } else { + _double = (double)va_arg(args, double); + + if ( _isnan(_double) ) + { + f += L"Nan"; + } + else if ( !_finite(_double) ) + { + if ( _double < 0 ) + f += L"-Inf"; + else + f += L"+Inf"; + } + else + { + if ( precision == -1 ) + precision = 6; + result = wnumberf(f,_double,*fmt,field_width,precision,flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + } + continue; + + case L'p': + if (field_width == -1) { + field_width = 2*sizeof(void *); + flags |= ZEROPAD; + } + result = wnumber(f, + (unsigned long) va_arg(args, void *), 16, + field_width, precision, flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + continue; + + case L'n': + if (qualifier == L'l') { + long * ip = va_arg(args, long *); + *ip = 0; + } else { + int * ip = va_arg(args, int *); + *ip = 0; + } + continue; + + /* integer number formats - set up the flags and "break" */ + case L'o': + base = 8; + break; + + case L'b': + base = 2; + break; + + case L'X': + flags |= LARGE; + case L'x': + base = 16; + break; + + case L'd': + case L'i': + flags |= SIGN; + case L'u': + break; + + default: + if (*fmt != L'%') + { + f += L'%'; + } + if (*fmt) + { + f += *fmt; + } + else + --fmt; + continue; + } + + if (qualifier == L'I') + num = va_arg(args, ULONGLONG); + else if (qualifier == L'l') { + if (flags & SIGN) + num = va_arg(args, long); + else + num = va_arg(args, unsigned long); + } + else if (qualifier == L'h') { + if (flags & SIGN) + num = va_arg(args, int); + else + num = va_arg(args, unsigned int); + } + else if (flags & SIGN) + num = va_arg(args, int); + else + num = va_arg(args, unsigned int); + result = wnumber(f, num, base, field_width, precision, flags); + if (result < 0) + { + assert(!"TODO FIXME handle error better"); + return f; + } + } + //putc('\0',f); + return f; +} diff --git a/reactos/tools/rbuild/ssprintf.h b/reactos/tools/rbuild/ssprintf.h new file mode 100644 index 00000000000..c7a6d2d2595 --- /dev/null +++ b/reactos/tools/rbuild/ssprintf.h @@ -0,0 +1,23 @@ +// ssprintf.h + +#ifndef SSPRINTF_H +#define SSPRINTF_H + +#include +#include + +std::string ssprintf ( const char* fmt, ... ); +std::string ssvprintf ( const char* fmt, va_list args ); + +std::wstring sswprintf ( const wchar_t* fmt, ... ); +std::wstring sswvprintf ( const wchar_t* fmt, va_list args ); + +#ifdef _UNICODE +#define sstprintf sswprintf +#define sstvprintf sswvprintf +#else +#define sstprintf ssprintf +#define sstvprintf ssvprintf +#endif + +#endif//SSPRINTF_H diff --git a/reactos/tools/rbuild/stubbedcomponent.cpp b/reactos/tools/rbuild/stubbedcomponent.cpp new file mode 100644 index 00000000000..77e3a18f336 --- /dev/null +++ b/reactos/tools/rbuild/stubbedcomponent.cpp @@ -0,0 +1,99 @@ +#include "pch.h" +#include + +#include "rbuild.h" + +using std::string; +using std::vector; + +StubbedComponent::StubbedComponent ( const Module* module_, + const XMLElement& stubbedComponentNode ) + : module(module_), + node(stubbedComponentNode) +{ + const XMLAttribute* att = node.GetAttribute ( "name", true ); + assert ( att ); + name = att->value; +} + +StubbedComponent::~StubbedComponent () +{ + for ( size_t i = 0; i < symbols.size(); i++ ) + delete symbols[i]; +} + +void +StubbedComponent::ProcessXML () +{ + size_t i; + for ( i = 0; i < node.subElements.size (); i++ ) + ProcessXMLSubElement ( *node.subElements[i] ); + for ( i = 0; i < symbols.size (); i++ ) + symbols[i]->ProcessXML (); +} + +void +StubbedComponent::ProcessXMLSubElement ( const XMLElement& e ) +{ + bool subs_invalid = false; + if ( e.name == "symbol" ) + { + symbols.push_back ( new StubbedSymbol ( e ) ); + subs_invalid = false; + } + if ( subs_invalid && e.subElements.size () > 0 ) + throw InvalidBuildFileException ( + e.location, + "<%s> cannot have sub-elements", + e.name.c_str() ); + for ( size_t i = 0; i < e.subElements.size (); i++ ) + ProcessXMLSubElement ( *e.subElements[i] ); +} + + + +StubbedSymbol::StubbedSymbol ( const XMLElement& stubbedSymbolNode ) + : node(stubbedSymbolNode) +{ +} + +StubbedSymbol::~StubbedSymbol () +{ +} + +void +StubbedSymbol::ProcessXML () +{ + if ( node.value.size () == 0 ) + { + throw InvalidBuildFileException ( + node.location, + " is empty." ); + } + symbol = node.value; + + strippedName = StripSymbol ( symbol ); + + const XMLAttribute* att = node.GetAttribute ( "newname", false ); + if ( att != NULL ) + newname = att->value; + else + newname = strippedName; +} + +string +StubbedSymbol::StripSymbol ( string symbol ) +{ + size_t start = 0; + while ( start < symbol.length () && symbol[start] == '@') + start++; + size_t end = symbol.length () - 1; + while ( end > 0 && isdigit ( symbol[end] ) ) + end--; + if ( end > 0 and symbol[end] == '@' ) + end--; + if ( end > 0 ) + return symbol.substr ( start, end - start + 1 ); + else + return ""; +} diff --git a/reactos/tools/rbuild/test.h b/reactos/tools/rbuild/test.h new file mode 100644 index 00000000000..ce8309bdeef --- /dev/null +++ b/reactos/tools/rbuild/test.h @@ -0,0 +1,139 @@ +#ifndef __TEST_H +#define __TEST_H + +#include "rbuild.h" +#include "backend/mingw/mingw.h" + +#define RBUILD_BASE "tools" SSEP "rbuild" SSEP + +class BaseTest +{ +public: + bool Failed; + BaseTest (); + virtual ~BaseTest (); + virtual void Run () = 0; +protected: + void Assert ( const char *message, + ... ); + void IsNull ( void* reference, + const char* file, + int line ); + void IsNotNull ( void* reference, + const char* file, + int line ); + void IsTrue ( bool condition, + const char* file, + int line ); + void IsFalse ( bool condition, + const char* file, + int line ); + void AreEqual ( int expected, + int actual, + const char* file, + int line ); + void AreEqual ( const std::string& expected, + const std::string& actual, + const char* file, + int line ); + void AreNotEqual ( int expected, + int actual, + const char* file, + int line ); +private: + void Fail (); +}; + +#define IS_NULL(reference) IsNull((void*)reference,__FILE__,__LINE__) +#define IS_NOT_NULL(reference) IsNotNull((void*)reference,__FILE__,__LINE__) +#define IS_TRUE(condition) IsTrue(condition,__FILE__,__LINE__) +#define IS_FALSE(condition) IsFalse(condition,__FILE__,__LINE__) +#define ARE_EQUAL(expected,actual) AreEqual(expected,actual,__FILE__,__LINE__) +#define ARE_NOT_EQUAL(expected,actual) AreNotEqual(expected,actual,__FILE__,__LINE__) + +class ProjectTest : public BaseTest +{ +public: + void Run (); +}; + + +class ModuleTest : public BaseTest +{ +public: + void Run (); +}; + + +class DefineTest : public BaseTest +{ +public: + void Run (); +}; + + +class IncludeTest : public BaseTest +{ +public: + void Run (); +}; + + +class InvokeTest : public BaseTest +{ +public: + void Run (); +}; + + +class LinkerFlagTest : public BaseTest +{ +public: + void Run (); +}; + + +class IfTest : public BaseTest +{ +public: + void Run (); +private: + void TestProjectIf ( Project& project ); + void TestModuleIf ( Project& project ); +}; + + +class FunctionTest : public BaseTest +{ +public: + void Run (); +}; + + +class SourceFileTest : public BaseTest +{ +public: + void Run (); + void IncludeTest (); + void FullParseTest (); +private: + bool IsParentOf ( const SourceFile* parent, + const SourceFile* child ); + +}; + + +class CDFileTest : public BaseTest +{ +public: + void Run (); +}; + + +class SymbolTest : public BaseTest +{ +public: + void Run (); +}; + +#endif /* __TEST_H */ diff --git a/reactos/tools/rbuild/tests/alltests.cpp b/reactos/tools/rbuild/tests/alltests.cpp new file mode 100644 index 00000000000..d5982385981 --- /dev/null +++ b/reactos/tools/rbuild/tests/alltests.cpp @@ -0,0 +1,193 @@ + +#include "pch.h" + +#include "rbuild.h" +#include "test.h" + +BaseTest::BaseTest() +{ + Failed = false; +} + +BaseTest::~BaseTest() +{ +} + +void BaseTest::Assert(const char *message, ...) +{ + va_list args; + va_start ( args, message ); + vprintf(message, args); + va_end ( args ); + Fail(); +} + +void BaseTest::IsNull(void* reference, + const char* file, + int line) +{ + if (reference != NULL) + { + Assert("Condition was not NULL at %s:%d\n", + file, + line); + } +} + +void BaseTest::IsNotNull(void* reference, + const char* file, + int line) +{ + if (reference == NULL) + { + Assert("Condition was NULL at %s:%d\n", + file, + line); + } +} + +void BaseTest::IsTrue(bool condition, + const char* file, + int line) +{ + if (!condition) + { + Assert("Condition was not true at %s:%d\n", + file, + line); + } +} + +void BaseTest::IsFalse(bool condition, + const char* file, + int line) +{ + if (condition) + { + Assert("Condition was not false at %s:%d\n", + file, + line); + } +} + +void BaseTest::AreEqual(int expected, + int actual, + const char* file, + int line) +{ + if (actual != expected) + { + Assert("Expected %d/0x%.08x was %d/0x%.08x at %s:%d\n", + expected, + expected, + actual, + actual, + file, + line); + } +} + +void BaseTest::AreEqual(const std::string& expected, + const std::string& actual, + const char* file, + int line) +{ + if (actual != expected) + { + Assert("Expected '%s' was '%s' at %s:%d\n", + expected.c_str(), + actual.c_str(), + file, + line); + } +} + +void BaseTest::AreNotEqual(int expected, + int actual, + const char* file, + int line) +{ + if (actual == expected) + { + Assert("Actual value expected to be different from %d/0x%.08x at %s:%d\n", + expected, + expected, + file, + line); + } +} + +void BaseTest::Fail() +{ + Failed = true; +} + +class BaseTestList : public std::vector +{ +public: + ~BaseTestList() + { + for ( size_t i = 0; i < size(); i++ ) + { + delete (*this)[i]; + } + } +}; + +class TestDispatcher +{ +public: + void Run() + { + int numberOfFailedTests = 0; + BaseTestList tests; + GetTests(tests); + for (size_t i = 0; i < tests.size(); i++) + { + try + { + BaseTest& test = *tests[i]; + test.Run(); + if (test.Failed) + numberOfFailedTests++; + } + catch (Exception& ex) + { + printf("%s\n", + ex.Message.c_str()); + numberOfFailedTests++; + } + } + + if (numberOfFailedTests > 0) + printf("%d tests failed\n", + numberOfFailedTests); + else + printf("All tests succeeded\n"); + } + +private: + void GetTests ( BaseTestList& tests ) + { + tests.push_back(new ProjectTest()); + tests.push_back(new ModuleTest()); + tests.push_back(new DefineTest()); + tests.push_back(new IncludeTest()); + tests.push_back(new InvokeTest()); + tests.push_back(new LinkerFlagTest()); + tests.push_back(new IfTest()); + tests.push_back(new FunctionTest()); + tests.push_back(new SourceFileTest()); + tests.push_back(new CDFileTest()); + tests.push_back(new SymbolTest()); + } +}; + + +int main(int argc, + char** argv) +{ + TestDispatcher testDispatcher; + testDispatcher.Run(); + return 0; +}; diff --git a/reactos/tools/rbuild/tests/cdfiletest.cpp b/reactos/tools/rbuild/tests/cdfiletest.cpp new file mode 100644 index 00000000000..3e6143ca982 --- /dev/null +++ b/reactos/tools/rbuild/tests/cdfiletest.cpp @@ -0,0 +1,22 @@ +#include "test.h" + +using std::string; + +void CDFileTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/cdfile.xml" ); + Project project( projectFilename ); + ARE_EQUAL ( 3, project.cdfiles.size () ); + + CDFile& cdfile1 = *project.cdfiles[0]; + ARE_EQUAL("dir1", cdfile1.base); + ARE_EQUAL("ReadMe1.txt", cdfile1.nameoncd); + + CDFile& cdfile2 = *project.cdfiles[1]; + ARE_EQUAL("dir2", cdfile2.base); + ARE_EQUAL("readme2.txt", cdfile2.nameoncd); + + CDFile& cdfile3 = *project.cdfiles[2]; + //ARE_EQUAL("", cdfile3.base); + ARE_EQUAL("readme3.txt", cdfile3.nameoncd); +} diff --git a/reactos/tools/rbuild/tests/data/automaticdependency.xml b/reactos/tools/rbuild/tests/data/automaticdependency.xml new file mode 100644 index 00000000000..3cf3d0a7cbe --- /dev/null +++ b/reactos/tools/rbuild/tests/data/automaticdependency.xml @@ -0,0 +1,15 @@ + + + + + + + + . + sourcefile1.c + + + + + + diff --git a/reactos/tools/rbuild/tests/data/automaticdependency_include.xml b/reactos/tools/rbuild/tests/data/automaticdependency_include.xml new file mode 100644 index 00000000000..9d8c7b43d4e --- /dev/null +++ b/reactos/tools/rbuild/tests/data/automaticdependency_include.xml @@ -0,0 +1,16 @@ + + + + + + + + . + sourcefile1 + sourcefile_include.c + + + + + + diff --git a/reactos/tools/rbuild/tests/data/cdfile.xml b/reactos/tools/rbuild/tests/data/cdfile.xml new file mode 100644 index 00000000000..22e5407d690 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/cdfile.xml @@ -0,0 +1,8 @@ + + + + readme1.txt + readme2.txt + readme3.txt + + diff --git a/reactos/tools/rbuild/tests/data/define.xml b/reactos/tools/rbuild/tests/data/define.xml new file mode 100644 index 00000000000..d4f10c12d59 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/define.xml @@ -0,0 +1,9 @@ + + + value1 + + + value2 + + + diff --git a/reactos/tools/rbuild/tests/data/if.xml b/reactos/tools/rbuild/tests/data/if.xml new file mode 100644 index 00000000000..759f486298e --- /dev/null +++ b/reactos/tools/rbuild/tests/data/if.xml @@ -0,0 +1,13 @@ + + + + compilerflag1 + + + + compilerflag2 + file1.c + + file2.c + + diff --git a/reactos/tools/rbuild/tests/data/include.xml b/reactos/tools/rbuild/tests/data/include.xml new file mode 100644 index 00000000000..5bf12038751 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/include.xml @@ -0,0 +1,14 @@ + + + include1 + + + include2 + + + + + include3 + + + diff --git a/reactos/tools/rbuild/tests/data/invoke.xml b/reactos/tools/rbuild/tests/data/invoke.xml new file mode 100644 index 00000000000..33bedb5564e --- /dev/null +++ b/reactos/tools/rbuild/tests/data/invoke.xml @@ -0,0 +1,13 @@ + + + + + file1.c + + + file1.c + + + + + diff --git a/reactos/tools/rbuild/tests/data/linkerflag.xml b/reactos/tools/rbuild/tests/data/linkerflag.xml new file mode 100644 index 00000000000..8977cc5c915 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/linkerflag.xml @@ -0,0 +1,7 @@ + + + -lgcc1 + + -lgcc2 + + diff --git a/reactos/tools/rbuild/tests/data/module.xml b/reactos/tools/rbuild/tests/data/module.xml new file mode 100644 index 00000000000..6ccc81839e1 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/module.xml @@ -0,0 +1,17 @@ + + + + + file1.c + file2.c + + + + + module1 + module1 + file3.c + file4.c + + + diff --git a/reactos/tools/rbuild/tests/data/project.xml b/reactos/tools/rbuild/tests/data/project.xml new file mode 100644 index 00000000000..97d58317cd8 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/project.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/reactos/tools/rbuild/tests/data/sourcefile1.c b/reactos/tools/rbuild/tests/data/sourcefile1.c new file mode 100644 index 00000000000..28af7778e50 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1.c @@ -0,0 +1,13 @@ +/* + * ReactOS kernel + */ +/* $Id: main.c 12694 2005-01-01 11:47:33Z hbirr $ + * FILE: ntoskrnl/ke/main.c + */ + +/* INCLUDES *****************************************************************/ + +#include +#include + +/* GLOBALS *******************************************************************/ diff --git a/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile1_header3.h b/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile1_header3.h new file mode 100644 index 00000000000..40a8c178f10 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile1_header3.h @@ -0,0 +1 @@ +/* empty */ diff --git a/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile_includenext.h b/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile_includenext.h new file mode 100644 index 00000000000..40a8c178f10 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1/sourcefile_includenext.h @@ -0,0 +1 @@ +/* empty */ diff --git a/reactos/tools/rbuild/tests/data/sourcefile1_header1.h b/reactos/tools/rbuild/tests/data/sourcefile1_header1.h new file mode 100644 index 00000000000..c4261ef88cb --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1_header1.h @@ -0,0 +1 @@ +#include diff --git a/reactos/tools/rbuild/tests/data/sourcefile1_header2.h b/reactos/tools/rbuild/tests/data/sourcefile1_header2.h new file mode 100644 index 00000000000..212537b619a --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1_header2.h @@ -0,0 +1,3 @@ +#include "sourcefile1/sourcefile1_header3.h" +#include +#include diff --git a/reactos/tools/rbuild/tests/data/sourcefile1_recurse.h b/reactos/tools/rbuild/tests/data/sourcefile1_recurse.h new file mode 100644 index 00000000000..0ce390cf892 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile1_recurse.h @@ -0,0 +1,2 @@ +#include +#include diff --git a/reactos/tools/rbuild/tests/data/sourcefile_include.c b/reactos/tools/rbuild/tests/data/sourcefile_include.c new file mode 100644 index 00000000000..8ee9670f406 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile_include.c @@ -0,0 +1,2 @@ +# include +#include diff --git a/reactos/tools/rbuild/tests/data/sourcefile_include.h b/reactos/tools/rbuild/tests/data/sourcefile_include.h new file mode 100644 index 00000000000..40a8c178f10 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile_include.h @@ -0,0 +1 @@ +/* empty */ diff --git a/reactos/tools/rbuild/tests/data/sourcefile_includenext.h b/reactos/tools/rbuild/tests/data/sourcefile_includenext.h new file mode 100644 index 00000000000..0f4f8e730b5 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/sourcefile_includenext.h @@ -0,0 +1 @@ +#include_next diff --git a/reactos/tools/rbuild/tests/data/symbol.xml b/reactos/tools/rbuild/tests/data/symbol.xml new file mode 100644 index 00000000000..cb0d536d035 --- /dev/null +++ b/reactos/tools/rbuild/tests/data/symbol.xml @@ -0,0 +1,9 @@ + + + + + HeapAlloc@12 + LdrAccessResource@16 + + + diff --git a/reactos/tools/rbuild/tests/definetest.cpp b/reactos/tools/rbuild/tests/definetest.cpp new file mode 100644 index 00000000000..09943a543bd --- /dev/null +++ b/reactos/tools/rbuild/tests/definetest.cpp @@ -0,0 +1,21 @@ +#include "test.h" + +using std::string; + +void DefineTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/define.xml" ); + Project project ( projectFilename ); + ARE_EQUAL(1, project.non_if_data.defines.size()); + Define& define1 = *project.non_if_data.defines[0]; + ARE_EQUAL("define1", define1.name); + ARE_EQUAL("value1", define1.value); + + ARE_EQUAL(1, project.modules.size()); + Module& module1 = *project.modules[0]; + + ARE_EQUAL(1, module1.non_if_data.defines.size()); + Define& define2 = *module1.non_if_data.defines[0]; + ARE_EQUAL("define2", define2.name); + ARE_EQUAL("value2", define2.value); +} diff --git a/reactos/tools/rbuild/tests/functiontest.cpp b/reactos/tools/rbuild/tests/functiontest.cpp new file mode 100644 index 00000000000..411e559338c --- /dev/null +++ b/reactos/tools/rbuild/tests/functiontest.cpp @@ -0,0 +1,11 @@ +#include "test.h" + +using std::string; + +void FunctionTest::Run () +{ + string fixedupFilename = NormalizeFilename ( "." SSEP "dir1" SSEP "dir2" SSEP ".." SSEP "filename.txt" ); + ARE_EQUAL ( "dir1" SSEP "filename.txt", fixedupFilename ); + ARE_EQUAL ( "file.txt", GetFilename ( "file.txt" ) ); + ARE_EQUAL ( "file.txt", GetFilename ( "dir" SSEP "file.txt" ) ); +} diff --git a/reactos/tools/rbuild/tests/iftest.cpp b/reactos/tools/rbuild/tests/iftest.cpp new file mode 100644 index 00000000000..2d938ddb7e5 --- /dev/null +++ b/reactos/tools/rbuild/tests/iftest.cpp @@ -0,0 +1,50 @@ +#include "test.h" + +using std::string; + +void +IfTest::TestProjectIf ( Project& project ) +{ + ARE_EQUAL ( 1, project.non_if_data.ifs.size () ); + If& if1 = *project.non_if_data.ifs[0]; + ARE_EQUAL ( "VAR1", if1.property ); + ARE_EQUAL ( "value1", if1.value ); + + ARE_EQUAL ( 1, if1.data.compilerFlags.size () ); + CompilerFlag& compilerFlag1 = *if1.data.compilerFlags[0]; + ARE_EQUAL( "compilerflag1", compilerFlag1.flag ); +} + +void +IfTest::TestModuleIf ( Project& project ) +{ + ARE_EQUAL ( 1, project.modules.size () ); + Module& module1 = *project.modules[0]; + + ARE_EQUAL ( 1, module1.non_if_data.ifs.size () ); + If& if1 = *module1.non_if_data.ifs[0]; + ARE_EQUAL ( "VAR2", if1.property ); + ARE_EQUAL ( "value2", if1.value ); + + ARE_EQUAL ( 1, if1.data.files.size () ); + File& file1 = *if1.data.files[0]; + ARE_EQUAL( SSEP "file1.c", file1.name ); + + ARE_EQUAL ( 1, module1.non_if_data.files.size () ); + File& file2 = *module1.non_if_data.files[0]; + ARE_EQUAL( SSEP "file2.c", file2.name ); + + ARE_EQUAL ( 1, if1.data.compilerFlags.size () ); + CompilerFlag& compilerFlag2 = *if1.data.compilerFlags[0]; + ARE_EQUAL( "compilerflag2", compilerFlag2.flag ); +} + +void +IfTest::Run () +{ + string projectFilename ( RBUILD_BASE "tests/data/if.xml" ); + Project project ( projectFilename ); + + TestProjectIf ( project ); + TestModuleIf ( project ); +} diff --git a/reactos/tools/rbuild/tests/includetest.cpp b/reactos/tools/rbuild/tests/includetest.cpp new file mode 100644 index 00000000000..3977d68605d --- /dev/null +++ b/reactos/tools/rbuild/tests/includetest.cpp @@ -0,0 +1,24 @@ +#include "test.h" + +using std::string; + +void IncludeTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/include.xml" ); + Project project ( projectFilename ); + ARE_EQUAL(1, project.non_if_data.includes.size()); + Include& include1 = *project.non_if_data.includes[0]; + ARE_EQUAL("include1", include1.directory); + + ARE_EQUAL(2, project.modules.size()); + Module& module1 = *project.modules[0]; + Module& module2 = *project.modules[1]; + + ARE_EQUAL(1, module1.non_if_data.includes.size()); + Include& include2 = *module1.non_if_data.includes[0]; + ARE_EQUAL("include2", include2.directory); + + ARE_EQUAL(1, module2.non_if_data.includes.size()); + Include& include3 = *module2.non_if_data.includes[0]; + ARE_EQUAL(FixSeparator("dir1/include3"), include3.directory); +} diff --git a/reactos/tools/rbuild/tests/invoketest.cpp b/reactos/tools/rbuild/tests/invoketest.cpp new file mode 100644 index 00000000000..409478a406f --- /dev/null +++ b/reactos/tools/rbuild/tests/invoketest.cpp @@ -0,0 +1,19 @@ +#include "test.h" + +using std::string; + +void InvokeTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/invoke.xml" ); + Project project ( projectFilename ); + ARE_EQUAL(1, project.modules.size()); + + Module& module1 = *project.modules[0]; + ARE_EQUAL(1, module1.invocations.size()); + + Invoke& invoke1 = *module1.invocations[0]; + ARE_EQUAL(1, invoke1.output.size()); + + InvokeFile& file1 = *invoke1.output[0]; + ARE_EQUAL(FixSeparator("dir1/file1.c"), file1.name); +} diff --git a/reactos/tools/rbuild/tests/linkerflagtest.cpp b/reactos/tools/rbuild/tests/linkerflagtest.cpp new file mode 100644 index 00000000000..6f7ac48a3a9 --- /dev/null +++ b/reactos/tools/rbuild/tests/linkerflagtest.cpp @@ -0,0 +1,19 @@ +#include "test.h" + +using std::string; + +void LinkerFlagTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/linkerflag.xml" ); + Project project ( projectFilename ); + ARE_EQUAL(1, project.linkerFlags.size()); + LinkerFlag& linkerFlag1 = *project.linkerFlags[0]; + ARE_EQUAL("-lgcc1", linkerFlag1.flag); + + ARE_EQUAL(1, project.modules.size()); + Module& module1 = *project.modules[0]; + + ARE_EQUAL(1, module1.linkerFlags.size()); + LinkerFlag& linkerFlag2 = *module1.linkerFlags[0]; + ARE_EQUAL("-lgcc2", linkerFlag2.flag); +} diff --git a/reactos/tools/rbuild/tests/moduletest.cpp b/reactos/tools/rbuild/tests/moduletest.cpp new file mode 100644 index 00000000000..87e31dbef9a --- /dev/null +++ b/reactos/tools/rbuild/tests/moduletest.cpp @@ -0,0 +1,37 @@ +#include "test.h" + +using std::string; + +void ModuleTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/module.xml" ); + Project project ( projectFilename ); + ARE_EQUAL(2, project.modules.size()); + + Module& module1 = *project.modules[0]; + IS_TRUE(module1.type == BuildTool); + + ARE_EQUAL(2, module1.non_if_data.files.size()); + ARE_EQUAL("dir1" SSEP "file1.c", module1.non_if_data.files[0]->name); + ARE_EQUAL("dir1" SSEP "file2.c", module1.non_if_data.files[1]->name); + + ARE_EQUAL(0, module1.non_if_data.libraries.size()); + + Module& module2 = *project.modules[1]; + IS_TRUE(module2.type == KernelModeDLL); + ARE_EQUAL("reactos", module2.installBase); + ARE_EQUAL("module2.ext", module2.installName); + + ARE_EQUAL(2, module2.non_if_data.files.size()); + ARE_EQUAL("dir2" SSEP "file3.c", module2.non_if_data.files[0]->name); + ARE_EQUAL("dir2" SSEP "file4.c", module2.non_if_data.files[1]->name); + + ARE_EQUAL(1, module2.non_if_data.libraries.size()); + Library& library1 = *module2.non_if_data.libraries[0]; + ARE_EQUAL("module1", library1.name); + + ARE_EQUAL(1, module2.dependencies.size()); + Dependency& module1dependency = *module2.dependencies[0]; + IS_NOT_NULL(module1dependency.dependencyModule); + ARE_EQUAL("module1", module1dependency.dependencyModule->name); +} diff --git a/reactos/tools/rbuild/tests/projecttest.cpp b/reactos/tools/rbuild/tests/projecttest.cpp new file mode 100644 index 00000000000..2769d860314 --- /dev/null +++ b/reactos/tools/rbuild/tests/projecttest.cpp @@ -0,0 +1,10 @@ +#include "test.h" + +using std::string; + +void ProjectTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/project.xml" ); + Project project( projectFilename ); + ARE_EQUAL(2, project.modules.size()); +} diff --git a/reactos/tools/rbuild/tests/sourcefiletest.cpp b/reactos/tools/rbuild/tests/sourcefiletest.cpp new file mode 100644 index 00000000000..a7af1a499a5 --- /dev/null +++ b/reactos/tools/rbuild/tests/sourcefiletest.cpp @@ -0,0 +1,70 @@ +#include "test.h" + +using std::string; + +bool +SourceFileTest::IsParentOf ( const SourceFile* parent, + const SourceFile* child ) +{ + size_t i; + for ( i = 0; i < child->parents.size (); i++ ) + { + if ( child->parents[i] != NULL ) + { + if ( child->parents[i] == parent ) + { + return true; + } + } + } + for ( i = 0; i < child->parents.size (); i++ ) + { + if ( child->parents[i] != NULL ) + { + if ( IsParentOf ( parent, + child->parents[i] ) ) + { + return true; + } + } + } + return false; +} + +void +SourceFileTest::IncludeTest () +{ + const Project project ( RBUILD_BASE "tests" SSEP "data" SSEP "automaticdependency_include.xml" ); + AutomaticDependency automaticDependency ( project ); + automaticDependency.Process (); + ARE_EQUAL( 4, automaticDependency.sourcefile_map.size () ); + const SourceFile* include = automaticDependency.RetrieveFromCache ( RBUILD_BASE "tests" SSEP "data" SSEP "sourcefile_include.h" ); + IS_NOT_NULL( include ); + const SourceFile* includenext = automaticDependency.RetrieveFromCache ( RBUILD_BASE "tests" SSEP "data" SSEP "sourcefile1" SSEP "sourcefile_includenext.h" ); + IS_NOT_NULL( includenext ); +} + +void +SourceFileTest::FullParseTest () +{ + const Project project ( RBUILD_BASE "tests" SSEP "data" SSEP "automaticdependency.xml" ); + AutomaticDependency automaticDependency ( project ); + automaticDependency.Process (); + ARE_EQUAL( 5, automaticDependency.sourcefile_map.size () ); + const SourceFile* header1 = automaticDependency.RetrieveFromCache ( RBUILD_BASE "tests" SSEP "data" SSEP "sourcefile1_header1.h" ); + IS_NOT_NULL( header1 ); + const SourceFile* recurse = automaticDependency.RetrieveFromCache ( RBUILD_BASE "tests" SSEP "data" SSEP "sourcefile1_recurse.h" ); + IS_NOT_NULL( recurse ); + IS_TRUE( IsParentOf ( header1, + recurse ) ); + IS_FALSE( IsParentOf ( recurse, + header1 ) ); + +} + +void +SourceFileTest::Run () +{ + IncludeTest (); + FullParseTest (); +} diff --git a/reactos/tools/rbuild/tests/symboltest.cpp b/reactos/tools/rbuild/tests/symboltest.cpp new file mode 100644 index 00000000000..007c49d4924 --- /dev/null +++ b/reactos/tools/rbuild/tests/symboltest.cpp @@ -0,0 +1,25 @@ +#include "test.h" + +using std::string; + +void SymbolTest::Run() +{ + string projectFilename ( RBUILD_BASE "tests/data/symbol.xml" ); + Project project ( projectFilename ); + + ARE_EQUAL ( 1, project.modules.size () ); + Module& module1 = *project.modules[0]; + + ARE_EQUAL ( 1, module1.stubbedComponents.size () ); + StubbedComponent& component1 = *module1.stubbedComponents[0]; + ARE_EQUAL ( "ntdll.dll", component1.name ); + + ARE_EQUAL ( 2, component1.symbols.size () ); + StubbedSymbol& symbol1 = *component1.symbols[0]; + ARE_EQUAL ( "HeapAlloc@12", symbol1.symbol ); + ARE_EQUAL ( "RtlAllocateHeap", symbol1.newname ); + + StubbedSymbol& symbol2 = *component1.symbols[1]; + ARE_EQUAL ( "LdrAccessResource@16", symbol2.symbol ); + ARE_EQUAL ( "LdrAccessResource@16", symbol2.newname ); +} diff --git a/reactos/tools/rbuild/testsupportcode.cpp b/reactos/tools/rbuild/testsupportcode.cpp new file mode 100644 index 00000000000..d67f2d62a3a --- /dev/null +++ b/reactos/tools/rbuild/testsupportcode.cpp @@ -0,0 +1,348 @@ +#include "pch.h" +#include + +#include "rbuild.h" + +using std::string; +using std::vector; + +TestSupportCode::TestSupportCode ( const Project& project ) + : project ( project ) +{ +} + +TestSupportCode::~TestSupportCode () +{ +} + +bool +TestSupportCode::IsTestModule ( const Module& module ) +{ + return module.type == Test; +} + +void +TestSupportCode::GenerateTestSupportCode ( bool verbose ) +{ + for ( size_t i = 0; i < project.modules.size (); i++ ) + { + if ( IsTestModule ( *project.modules[i] ) ) + { + GenerateTestSupportCodeForModule ( *project.modules[i], + verbose ); + } + } +} + +void +TestSupportCode::GenerateTestSupportCodeForModule ( Module& module, + bool verbose ) +{ + if ( verbose ) + { + printf ( "\nGenerating test support code for %s", + module.name.c_str () ); + } + + WriteHooksFile ( module ); + WriteStubsFile ( module ); + WriteStartupFile ( module ); +} + +string +TestSupportCode::GetHooksFilename ( Module& module ) +{ + return NormalizeFilename ( Environment::GetIntermediatePath () + SSEP + module.GetBasePath () + SSEP + "_hooks.c" ); +} + +char* +TestSupportCode::WriteStubbedSymbolToHooksFile ( char* buffer, + const StubbedComponent& component, + const StubbedSymbol& symbol ) +{ + buffer = buffer + sprintf ( buffer, + " {\"%s\", \"%s\", NULL, NULL, NULL},\n", + component.name.c_str (), + symbol.newname.c_str () ); + return buffer; +} + +char* +TestSupportCode::WriteStubbedComponentToHooksFile ( char* buffer, + const StubbedComponent& component ) +{ + for ( size_t i = 0; i < component.symbols.size () ; i++ ) + buffer = WriteStubbedSymbolToHooksFile ( buffer, + component, + *component.symbols[i] ); + return buffer; +} + +void +TestSupportCode::WriteHooksFile ( Module& module ) +{ + char* buf; + char* s; + + buf = (char*) malloc ( 50*1024 ); + if ( buf == NULL ) + throw OutOfMemoryException (); + + s = buf; + s = s + sprintf ( s, "/* This file is automatically generated. */\n" ); + s = s + sprintf ( s, "#include \n" ); + s = s + sprintf ( s, "#include \"regtests.h\"\n" ); + s = s + sprintf ( s, "\n" ); + s = s + sprintf ( s, "API_DESCRIPTION ExternalDependencies[] =\n" ); + s = s + sprintf ( s, "{\n" ); + + int symbolCount = 0; + for ( size_t i = 0; i < module.stubbedComponents.size () ; i++ ) + { + s = WriteStubbedComponentToHooksFile ( s, + *module.stubbedComponents[i] ); + symbolCount += module.stubbedComponents[i]->symbols.size (); + } + + s = s + sprintf ( s, "};\n" ); + s = s + sprintf ( s, "\n" ); + s = s + sprintf ( s, "#define ExternalDependencyCount %d\n", symbolCount ); + s = s + sprintf ( s, "ULONG MaxExternalDependency = ExternalDependencyCount - 1;\n" ); + s = s + sprintf ( s, "\n" ); + + FileSupportCode::WriteIfChanged ( buf, GetHooksFilename ( module ) ); + + free ( buf ); +} + +string +TestSupportCode::GetStubsFilename ( Module& module ) +{ + return NormalizeFilename ( Environment::GetIntermediatePath () + SSEP + module.GetBasePath () + SSEP + "_stubs.S" ); +} + +char* +TestSupportCode::WriteStubbedSymbolToStubsFile ( char* buffer, + const StubbedComponent& component, + const StubbedSymbol& symbol, + int stubIndex ) +{ + buffer = buffer + sprintf ( buffer, + ".globl _%s\n", + symbol.symbol.c_str () ); + buffer = buffer + sprintf ( buffer, + "_%s:\n", + symbol.symbol.c_str () ); + buffer = buffer + sprintf ( buffer, + " pushl $%d\n", + stubIndex ); + buffer = buffer + sprintf ( buffer, + " jmp passthrough\n" ); + buffer = buffer + sprintf ( buffer, "\n" ); + return buffer; +} + +char* +TestSupportCode::WriteStubbedComponentToStubsFile ( char* buffer, + const StubbedComponent& component, + int* stubIndex ) +{ + for ( size_t i = 0; i < component.symbols.size () ; i++ ) + buffer = WriteStubbedSymbolToStubsFile ( buffer, + component, + *component.symbols[i], + (*stubIndex)++ ); + return buffer; +} + +void +TestSupportCode::WriteStubsFile ( Module& module ) +{ + char* buf; + char* s; + + buf = (char*) malloc ( 50*1024 ); + if ( buf == NULL ) + throw OutOfMemoryException (); + + s = buf; + s = s + sprintf ( s, "/* This file is automatically generated. */\n" ); + s = s + sprintf ( s, "passthrough:\n" ); + s = s + sprintf ( s, " call _FrameworkGetHook@4\n" ); + s = s + sprintf ( s, " test %%eax, %%eax\n" ); + s = s + sprintf ( s, " je .return\n" ); + s = s + sprintf ( s, " jmp *%%eax\n" ); + s = s + sprintf ( s, ".return:\n" ); + s = s + sprintf ( s, " /* This will most likely corrupt the stack */\n" ); + s = s + sprintf ( s, " ret\n" ); + s = s + sprintf ( s, "\n" ); + + int stubIndex = 0; + for ( size_t i = 0; i < module.stubbedComponents.size () ; i++ ) + { + s = WriteStubbedComponentToStubsFile ( s, + *module.stubbedComponents[i], + &stubIndex ); + } + + FileSupportCode::WriteIfChanged ( buf, GetStubsFilename ( module ) ); + + free ( buf ); +} + +string +TestSupportCode::GetStartupFilename ( Module& module ) +{ + return NormalizeFilename ( Environment::GetIntermediatePath () + SSEP + module.GetBasePath () + SSEP + "_startup.c" ); +} + +string +TestSupportCode::GetTestDispatcherName ( string filename ) +{ + string filenamePart = ReplaceExtension ( GetFilename ( filename ), "" ); + if ( filenamePart.length () > 0 ) + filenamePart[0] = toupper ( filenamePart[0] ); + for ( size_t i = 1; i < filenamePart.length (); i++ ) + { + filenamePart[i] = tolower ( filenamePart[i] ); + } + return filenamePart + "Test"; +} + +bool +TestSupportCode::IsTestFile ( string& filename ) const +{ + if ( stricmp ( GetFilename ( filename ).c_str (), "setup.c" ) == 0 ) + return false; + return true; +} + +void +TestSupportCode::GetSourceFilenames ( string_list& list, + Module& module ) const +{ + size_t i; + + const vector& files = module.non_if_data.files; + for ( i = 0; i < files.size (); i++ ) + { + if ( !files[i]->IsGeneratedFile () && IsTestFile ( files[i]->name ) ) + list.push_back ( files[i]->name ); + } + // intentionally make a copy so that we can append more work in + // the middle of processing without having to go recursive + vector v = module.non_if_data.ifs; + for ( i = 0; i < v.size (); i++ ) + { + size_t j; + If& rIf = *v[i]; + // check for sub-ifs to add to list + const vector& ifs = rIf.data.ifs; + for ( j = 0; j < ifs.size (); j++ ) + v.push_back ( ifs[j] ); + const vector& files = rIf.data.files; + for ( j = 0; j < files.size (); j++ ) + { + File& file = *files[j]; + if ( !file.IsGeneratedFile () && IsTestFile ( file.name ) ) + { + list.push_back ( file.name ); + } + } + } +} + +char* +TestSupportCode::WriteTestDispatcherPrototypesToStartupFile ( char* buffer, + Module& module ) +{ + string_list files; + GetSourceFilenames ( files, + module ); + for ( size_t i = 0; i < files.size (); i++ ) + { + buffer = buffer + sprintf ( buffer, + "extern void %s(int Command, char *Buffer);\n", + GetTestDispatcherName ( files[i] ).c_str () ); + } + buffer = buffer + sprintf ( buffer, "\n" ); + return buffer; +} + +char* +TestSupportCode::WriteRegisterTestsFunctionToStartupFile ( char* buffer, + Module& module ) +{ + buffer = buffer + sprintf ( buffer, + "extern void AddTest(TestRoutine Routine);\n" ); + buffer = buffer + sprintf ( buffer, + "\n" ); + + buffer = buffer + sprintf ( buffer, + "void\n" ); + buffer = buffer + sprintf ( buffer, + "RegisterTests()\n" ); + buffer = buffer + sprintf ( buffer, + "{\n" ); + + string_list files; + GetSourceFilenames ( files, + module ); + for ( size_t i = 0; i < files.size (); i++ ) + { + buffer = buffer + sprintf ( buffer, + "AddTest((TestRoutine)%s);\n", + GetTestDispatcherName ( files[i]).c_str () ); + } + buffer = buffer + sprintf ( buffer, + "}\n" ); + buffer = buffer + sprintf ( buffer, "\n" ); + return buffer; +} + +void +TestSupportCode::WriteStartupFile ( Module& module ) +{ + char* buf; + char* s; + + buf = (char*) malloc ( 50*1024 ); + if ( buf == NULL ) + throw OutOfMemoryException (); + + s = buf; + s = s + sprintf ( s, "/* This file is automatically generated. */\n" ); + s = s + sprintf ( s, "\n" ); + s = s + sprintf ( s, "#include \n" ); + s = s + sprintf ( s, "#include \"regtests.h\"\n" ); + s = s + sprintf ( s, "\n" ); + s = WriteTestDispatcherPrototypesToStartupFile ( s, + module ); + s = WriteRegisterTestsFunctionToStartupFile ( s, + module ); + s = s + sprintf ( s, "\n" ); + s = s + sprintf ( s, "void\n" ); + s = s + sprintf ( s, "ConsoleWrite(char *Buffer)\n" ); + s = s + sprintf ( s, "{\n" ); + s = s + sprintf ( s, " printf(Buffer);\n" ); + s = s + sprintf ( s, "}\n" ); + s = s + sprintf ( s, "\n" ); + s = s + sprintf ( s, "int\n" ); + s = s + sprintf ( s, "mainCRTStartup(HANDLE hInstance,\n" ); + s = s + sprintf ( s, " HANDLE hPrevInstance,\n" ); + s = s + sprintf ( s, " LPSTR lpszCmdParam,\n" ); + s = s + sprintf ( s, " int nCmdShow)\n" ); + s = s + sprintf ( s, "{\n" ); + s = s + sprintf ( s, " InitializeTests();\n" ); + s = s + sprintf ( s, " RegisterTests();\n" ); + s = s + sprintf ( s, " SetupOnce();\n" ); + s = s + sprintf ( s, " PerformTests(ConsoleWrite, NULL);\n" ); + s = s + sprintf ( s, " _ExitProcess(0);\n" ); + s = s + sprintf ( s, " return 0;\n" ); + s = s + sprintf ( s, "}\n" ); + s = s + sprintf ( s, "\n" ); + + FileSupportCode::WriteIfChanged ( buf, GetStartupFilename ( module ) ); + + free ( buf ); +} diff --git a/reactos/tools/rbuild/wineresource.cpp b/reactos/tools/rbuild/wineresource.cpp new file mode 100644 index 00000000000..5938213ed83 --- /dev/null +++ b/reactos/tools/rbuild/wineresource.cpp @@ -0,0 +1,100 @@ +#include "pch.h" +#include + +#include "rbuild.h" + +using std::string; +using std::vector; + +WineResource::WineResource ( const Project& project, + string bin2res ) + : project ( project ), + bin2res ( bin2res ) +{ +} + +WineResource::~WineResource () +{ +} + +bool +WineResource::IsSpecFile ( const File& file ) +{ + string extension = GetExtension ( file.name ); + if ( extension == ".spec" || extension == ".SPEC" ) + return true; + return false; +} + +bool +WineResource::IsWineModule ( const Module& module ) +{ + const vector& files = module.non_if_data.files; + for ( size_t i = 0; i < files.size (); i++ ) + { + if ( IsSpecFile ( *files[i] ) ) + return true; + } + return false; +} + +bool +WineResource::IsResourceFile ( const File& file ) +{ + string extension = GetExtension ( file.name ); + if ( extension == ".rc" || extension == ".RC" ) + return true; + return false; +} + +string +WineResource::GetResourceFilename ( const Module& module ) +{ + const vector& files = module.non_if_data.files; + for ( size_t i = 0; i < files.size (); i++ ) + { + if ( IsResourceFile ( *files[i] ) ) + return files[i]->name; + } + return ""; +} + +void +WineResource::UnpackResources ( bool verbose ) +{ + for ( size_t i = 0; i < project.modules.size (); i++ ) + { + if ( IsWineModule ( *project.modules[i] ) ) + { + UnpackResourcesInModule ( *project.modules[i], + verbose ); + } + } +} + +void +WineResource::UnpackResourcesInModule ( Module& module, + bool verbose ) +{ + string resourceFilename = GetResourceFilename ( module ); + if ( resourceFilename.length () == 0 ) + return; + + if ( verbose ) + { + printf ( "\nUnpacking resources for %s", + module.name.c_str () ); + } + + string outputDirectory = module.GetBasePath (); + string parameters = ssprintf ( "-b %s -f -x %s", + NormalizeFilename ( outputDirectory ).c_str (), + NormalizeFilename ( resourceFilename ).c_str () ); + string command = bin2res + " " + parameters; + int exitcode = system ( command.c_str () ); + if ( exitcode != 0 ) + { + throw InvocationFailedException ( command, + exitcode ); + } +} diff --git a/reactos/tools/rmkdir.c b/reactos/tools/rmkdir.c index ecd54c71611..6a6678c6adc 100644 --- a/reactos/tools/rmkdir.c +++ b/reactos/tools/rmkdir.c @@ -2,7 +2,7 @@ #include #include #include -#ifdef _MSC_VER +#ifdef WIN32 #include #else #include @@ -10,112 +10,101 @@ #include #endif -#ifdef UNIX_PATHS -#define DIR_SEPARATOR_CHAR '/' -#define DIR_SEPARATOR_STRING "/" -#else -#ifdef DOS_PATHS -#define DIR_SEPARATOR_CHAR '\\' -#define DIR_SEPARATOR_STRING "\\" -#endif -#endif +#define WIN_SEPARATOR_CHAR '\\' +#define WIN_SEPARATOR_STRING "\\" +#define NIX_SEPARATOR_CHAR '/' +#define NIX_SEPARATOR_STRING "/" -char* convert_path(char* origpath) -{ - char* newpath; - int i; - - //newpath = strdup(origpath); - newpath=malloc(strlen(origpath)+1); - strcpy(newpath,origpath); - - i = 0; - while (newpath[i] != 0) - { -#ifdef UNIX_PATHS - if (newpath[i] == '\\') - { - newpath[i] = '/'; - } +#ifdef WIN32 +#define DIR_SEPARATOR_CHAR WIN_SEPARATOR_CHAR +#define DIR_SEPARATOR_STRING WIN_SEPARATOR_STRING +#define BAD_SEPARATOR_CHAR NIX_SEPARATOR_CHAR +#define MKDIR(s) mkdir(s) #else -#ifdef DOS_PATHS - if (newpath[i] == '/') - { - newpath[i] = '\\'; - } -#endif -#endif - i++; - } - return(newpath); +#define DIR_SEPARATOR_CHAR NIX_SEPARATOR_CHAR +#define DIR_SEPARATOR_STRING NIX_SEPARATOR_STRING +#define BAD_SEPARATOR_CHAR WIN_SEPARATOR_CHAR +#define MKDIR(s) mkdir(s,0755) +#endif + +char* +convert_path(char* origpath) +{ + char* newpath; + int i; + + newpath=malloc(strlen(origpath)+1); + strcpy(newpath,origpath); + + i = 0; + while (newpath[i] != 0) + { + if (newpath[i] == BAD_SEPARATOR_CHAR) + { + newpath[i] = DIR_SEPARATOR_CHAR; + } + i++; + } + return(newpath); } #define TRANSFER_SIZE (65536) int mkdir_p(char* path) { - if (chdir(path) == 0) - { + if (chdir(path) == 0) + { + return(0); + } + if (MKDIR(path) != 0) + { + perror("Failed to create directory"); + exit(1); + } + if (chdir(path) != 0) + { + perror("Failed to change directory"); + exit(1); + } return(0); - } -#ifndef WIN32 - if (mkdir(path, 0755) != 0) - { - perror("Failed to create directory"); - exit(1); - } -#else - if (mkdir(path) != 0) - { - perror("Failed to create directory"); - exit(1); - } -#endif - - if (chdir(path) != 0) - { - perror("Failed to change directory"); - exit(1); - } - return(0); } int main(int argc, char* argv[]) { - char* path1; - char* csec; - char buf[256]; - - if (argc != 2) - { - fprintf(stderr, "Too many arguments\n"); - exit(1); - } - - path1 = convert_path(argv[1]); - - if (isalpha(path1[0]) && path1[1] == ':' && path1[2] == DIR_SEPARATOR_CHAR) - { - csec = strtok(path1, DIR_SEPARATOR_STRING); - sprintf(buf, "%s\\", csec); - chdir(buf); - csec = strtok(NULL, DIR_SEPARATOR_STRING); - } - else if (path1[0] == DIR_SEPARATOR_CHAR) - { - chdir(DIR_SEPARATOR_STRING); - csec = strtok(path1, DIR_SEPARATOR_STRING); - } - else - { - csec = strtok(path1, DIR_SEPARATOR_STRING); - } - - while (csec != NULL) - { - mkdir_p(csec); - csec = strtok(NULL, DIR_SEPARATOR_STRING); - } - - exit(0); + char* path1; + char* csec; + char buf[256]; + + if (argc != 2) + { + fprintf(stderr, "Too many arguments\n"); + exit(1); + } + + path1 = convert_path(argv[1]); + + if (isalpha(path1[0]) && path1[1] == ':' && path1[2] == DIR_SEPARATOR_CHAR) + { + csec = strtok(path1, DIR_SEPARATOR_STRING); + sprintf(buf, "%s\\", csec); + chdir(buf); + csec = strtok(NULL, DIR_SEPARATOR_STRING); + } + else if (path1[0] == DIR_SEPARATOR_CHAR) + { + chdir(DIR_SEPARATOR_STRING); + csec = strtok(path1, DIR_SEPARATOR_STRING); + } + else + { + csec = strtok(path1, DIR_SEPARATOR_STRING); + } + + while (csec != NULL) + { + mkdir_p(csec); + csec = strtok(NULL, DIR_SEPARATOR_STRING); + } + + exit(0); } diff --git a/reactos/tools/rsym.c b/reactos/tools/rsym.c index 9fc2c89ae00..a69ef711dbb 100644 --- a/reactos/tools/rsym.c +++ b/reactos/tools/rsym.c @@ -420,6 +420,7 @@ IncludeRelocationsForSection(PIMAGE_SECTION_HEADER SectionHeader) { static char *BlacklistedSections[] = { + ".edata", ".idata", ".reloc" }; diff --git a/reactos/tools/rsym.mak b/reactos/tools/rsym.mak new file mode 100644 index 00000000000..6ec29f2aa69 --- /dev/null +++ b/reactos/tools/rsym.mak @@ -0,0 +1,41 @@ +RSYM_BASE = $(TOOLS_BASE) +RSYM_BASE_ = $(RSYM_BASE)$(SEP) + +RSYM_INT = $(INTERMEDIATE_)$(RSYM_BASE) +RSYM_INT_ = $(RSYM_INT)$(SEP) +RSYM_OUT = $(OUTPUT_)$(RSYM_BASE) +RSYM_OUT_ = $(RSYM_OUT)$(SEP) + +RSYM_TARGET = \ + $(EXEPREFIX)$(RSYM_OUT_)rsym$(EXEPOSTFIX) + +RSYM_SOURCES = \ + $(RSYM_BASE_)rsym.c \ + $(RSYM_BASE_)rsym_common.c + +RSYM_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(RSYM_SOURCES:.c=.o)) + +RSYM_HOST_CFLAGS = -g -Werror -Wall + +RSYM_HOST_LFLAGS = -g + +.PHONY: rsym +rsym: $(RSYM_TARGET) + +$(RSYM_TARGET): $(RSYM_OBJECTS) | $(RSYM_OUT) + $(ECHO_LD) + ${host_gcc} $(RSYM_OBJECTS) $(RSYM_HOST_LFLAGS) -o $@ + +$(RSYM_INT_)rsym.o: $(RSYM_BASE_)rsym.c | $(RSYM_INT) + $(ECHO_CC) + ${host_gcc} $(RSYM_HOST_CFLAGS) -c $< -o $@ + +$(RSYM_INT_)rsym_common.o: $(RSYM_BASE_)rsym_common.c | $(RSYM_INT) + $(ECHO_CC) + ${host_gcc} $(RSYM_HOST_CFLAGS) -c $< -o $@ + +.PHONY: rsym_clean +rsym_clean: + -@$(nrm) $(RSYM_TARGET) $(RSYM_OBJECTS) 2>$(NUL) +clean: rsym_clean diff --git a/reactos/tools/tools.mak b/reactos/tools/tools.mak new file mode 100644 index 00000000000..85ac17eee06 --- /dev/null +++ b/reactos/tools/tools.mak @@ -0,0 +1,32 @@ +TOOLS_BASE = tools +TOOLS_BASE_ = $(TOOLS_BASE)$(SEP) +TOOLS_INT = $(INTERMEDIATE_)$(TOOLS_BASE) +TOOLS_INT_ = $(TOOLS_INT)$(SEP) +TOOLS_OUT = $(OUTPUT_)$(TOOLS_BASE) +TOOLS_OUT_ = $(TOOLS_OUT)$(SEP) + +$(TOOLS_INT): | $(INTERMEDIATE) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(TOOLS_OUT): | $(OUTPUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + + +include tools/rsym.mak +include tools/bin2res/bin2res.mak +include tools/buildno/buildno.mak +include tools/cabman/cabman.mak +include tools/cdmake/cdmake.mak +include tools/mkhive/mkhive.mak +include tools/nci/nci.mak +include tools/rbuild/rbuild.mak +include tools/unicode/unicode.mak +include tools/widl/widl.mak +include tools/winebuild/winebuild.mak +include tools/wmc/wmc.mak +include tools/wpp/wpp.mak +include tools/wrc/wrc.mak diff --git a/reactos/tools/unicode/Makefile b/reactos/tools/unicode/Makefile deleted file mode 100644 index c561c3bbe6c..00000000000 --- a/reactos/tools/unicode/Makefile +++ /dev/null @@ -1,87 +0,0 @@ -PATH_TO_TOP = ../.. - -include $(PATH_TO_TOP)/config - -TARGET_TYPE = host_library - -TARGET_NAME = unicode - -TARGET_CFLAGS = -D__USE_W32API -DWINVER=0x501 -DWINE_UNICODE_API= \ - -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \ - -I$(PATH_TO_TOP)/include/wine -Wall -Werror - -CODEPAGES = \ - 037 \ - 424 \ - 437 \ - 500 \ - 737 \ - 775 \ - 850 \ - 852 \ - 855 \ - 856 \ - 857 \ - 860 \ - 861 \ - 862 \ - 863 \ - 864 \ - 865 \ - 866 \ - 869 \ - 874 \ - 875 \ - 878 \ - 932 \ - 936 \ - 949 \ - 950 \ - 1006 \ - 1026 \ - 1250 \ - 1251 \ - 1252 \ - 1253 \ - 1254 \ - 1255 \ - 1256 \ - 1257 \ - 1258 \ - 10000 \ - 10006 \ - 10007 \ - 10029 \ - 10079 \ - 10081 \ - 20866 \ - 20932 \ - 21866 \ - 28591 \ - 28592 \ - 28593 \ - 28594 \ - 28595 \ - 28596 \ - 28597 \ - 28598 \ - 28599 \ - 28600 \ - 28603 \ - 28604 \ - 28605 \ - 28606 - -TARGET_OBJECTS = \ - casemap.o \ - compose.o \ - cptable.o \ - mbtowc.o \ - string.o \ - wctomb.o \ - wctype.o \ - $(CODEPAGES:%=c_%.o) - -include $(PATH_TO_TOP)/rules.mak - -include $(TOOLS_PATH)/helper.mk diff --git a/reactos/tools/unicode/unicode.mak b/reactos/tools/unicode/unicode.mak new file mode 100644 index 00000000000..5d5334cdc04 --- /dev/null +++ b/reactos/tools/unicode/unicode.mak @@ -0,0 +1,380 @@ +UNICODE_BASE = $(TOOLS_BASE_)unicode +UNICODE_BASE_ = $(UNICODE_BASE)$(SEP) +UNICODE_INT = $(INTERMEDIATE_)$(UNICODE_BASE) +UNICODE_INT_ = $(UNICODE_INT)$(SEP) +UNICODE_OUT = $(OUTPUT_)$(UNICODE_BASE) +UNICODE_OUT_ = $(UNICODE_OUT)$(SEP) + +$(UNICODE_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(UNICODE_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +UNICODE_TARGET = \ + $(UNICODE_OUT_)libunicode.a + +UNICODE_CODEPAGES = \ + 037 \ + 424 \ + 437 \ + 500 \ + 737 \ + 775 \ + 850 \ + 852 \ + 855 \ + 856 \ + 857 \ + 860 \ + 861 \ + 862 \ + 863 \ + 864 \ + 865 \ + 866 \ + 869 \ + 874 \ + 875 \ + 878 \ + 932 \ + 936 \ + 949 \ + 950 \ + 1006 \ + 1026 \ + 1250 \ + 1251 \ + 1252 \ + 1253 \ + 1254 \ + 1255 \ + 1256 \ + 1257 \ + 1258 \ + 10000 \ + 10006 \ + 10007 \ + 10029 \ + 10079 \ + 10081 \ + 20866 \ + 20932 \ + 21866 \ + 28591 \ + 28592 \ + 28593 \ + 28594 \ + 28595 \ + 28596 \ + 28597 \ + 28598 \ + 28599 \ + 28600 \ + 28603 \ + 28604 \ + 28605 \ + 28606 + +UNICODE_SOURCES = $(addprefix $(UNICODE_BASE_), \ + casemap.c \ + compose.c \ + cptable.c \ + mbtowc.c \ + string.c \ + wctomb.c \ + wctype.c \ + $(UNICODE_CODEPAGES:%=c_%.o) \ + ) + +UNICODE_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(UNICODE_SOURCES:.c=.o)) + +UNICODE_HOST_CFLAGS = \ + -D__USE_W32API -DWINVER=0x501 -DWINE_UNICODE_API= \ + -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \ + -I$(UNICODE_BASE) -Iinclude/wine -Iw32api/include + +.PHONY: unicode +unicode: $(UNICODE_TARGET) + +$(UNICODE_TARGET): $(UNICODE_OBJECTS) | $(UNICODE_OUT) + $(ECHO_AR) + ${host_ar} -rc $@ $(UNICODE_OBJECTS) + +$(UNICODE_INT_)casemap.o: $(UNICODE_BASE_)casemap.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)compose.o: $(UNICODE_BASE_)compose.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)cptable.o: $(UNICODE_BASE_)cptable.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)mbtowc.o: $(UNICODE_BASE_)mbtowc.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)string.o: $(UNICODE_BASE_)string.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)wctomb.o: $(UNICODE_BASE_)wctomb.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)wctype.o: $(UNICODE_BASE_)wctype.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_037.o: $(UNICODE_BASE_)c_037.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_424.o: $(UNICODE_BASE_)c_424.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_437.o: $(UNICODE_BASE_)c_437.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_500.o: $(UNICODE_BASE_)c_500.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_737.o: $(UNICODE_BASE_)c_737.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_775.o: $(UNICODE_BASE_)c_775.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_850.o: $(UNICODE_BASE_)c_850.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_852.o: $(UNICODE_BASE_)c_852.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_855.o: $(UNICODE_BASE_)c_855.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_856.o: $(UNICODE_BASE_)c_856.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_857.o: $(UNICODE_BASE_)c_857.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_860.o: $(UNICODE_BASE_)c_860.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_861.o: $(UNICODE_BASE_)c_861.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_862.o: $(UNICODE_BASE_)c_862.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_863.o: $(UNICODE_BASE_)c_863.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_864.o: $(UNICODE_BASE_)c_864.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_865.o: $(UNICODE_BASE_)c_865.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_866.o: $(UNICODE_BASE_)c_866.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_869.o: $(UNICODE_BASE_)c_869.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_874.o: $(UNICODE_BASE_)c_874.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_875.o: $(UNICODE_BASE_)c_875.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_878.o: $(UNICODE_BASE_)c_878.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_932.o: $(UNICODE_BASE_)c_932.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_936.o: $(UNICODE_BASE_)c_936.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_949.o: $(UNICODE_BASE_)c_949.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_950.o: $(UNICODE_BASE_)c_950.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1006.o: $(UNICODE_BASE_)c_1006.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1026.o: $(UNICODE_BASE_)c_1026.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1250.o: $(UNICODE_BASE_)c_1250.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1251.o: $(UNICODE_BASE_)c_1251.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1252.o: $(UNICODE_BASE_)c_1252.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1253.o: $(UNICODE_BASE_)c_1253.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1254.o: $(UNICODE_BASE_)c_1254.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1255.o: $(UNICODE_BASE_)c_1255.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1256.o: $(UNICODE_BASE_)c_1256.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1257.o: $(UNICODE_BASE_)c_1257.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_1258.o: $(UNICODE_BASE_)c_1258.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10000.o: $(UNICODE_BASE_)c_10000.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10006.o: $(UNICODE_BASE_)c_10006.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10007.o: $(UNICODE_BASE_)c_10007.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10029.o: $(UNICODE_BASE_)c_10029.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10079.o: $(UNICODE_BASE_)c_10079.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_10081.o: $(UNICODE_BASE_)c_10081.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_20866.o: $(UNICODE_BASE_)c_20866.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_20932.o: $(UNICODE_BASE_)c_20932.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_21866.o: $(UNICODE_BASE_)c_21866.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28591.o: $(UNICODE_BASE_)c_28591.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28592.o: $(UNICODE_BASE_)c_28592.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28593.o: $(UNICODE_BASE_)c_28593.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28594.o: $(UNICODE_BASE_)c_28594.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28595.o: $(UNICODE_BASE_)c_28595.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28596.o: $(UNICODE_BASE_)c_28596.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28597.o: $(UNICODE_BASE_)c_28597.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28598.o: $(UNICODE_BASE_)c_28598.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28599.o: $(UNICODE_BASE_)c_28599.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28600.o: $(UNICODE_BASE_)c_28600.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28603.o: $(UNICODE_BASE_)c_28603.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28604.o: $(UNICODE_BASE_)c_28604.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28605.o: $(UNICODE_BASE_)c_28605.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +$(UNICODE_INT_)c_28606.o: $(UNICODE_BASE_)c_28606.c | $(UNICODE_INT) + $(ECHO_CC) + ${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@ + +.PHONY: unicode_clean +unicode_clean: + -@$(rm) $(UNICODE_TARGET) $(UNICODE_OBJECTS) 2>$(NUL) +clean: unicode_clean diff --git a/reactos/tools/widl/widl.mak b/reactos/tools/widl/widl.mak new file mode 100644 index 00000000000..d552051036e --- /dev/null +++ b/reactos/tools/widl/widl.mak @@ -0,0 +1,123 @@ +WIDL_BASE = $(TOOLS_BASE)$(SEP)widl +WIDL_BASE_ = $(WIDL_BASE)$(SEP) +WIDL_INT = $(INTERMEDIATE_)$(WIDL_BASE) +WIDL_INT_ = $(WIDL_INT)$(SEP) +WIDL_OUT = $(OUTPUT_)$(WIDL_BASE) +WIDL_OUT_ = $(WIDL_OUT)$(SEP) + +$(WIDL_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WIDL_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WIDL_PORT_BASE = $(WIDL_BASE)$(SEP)port +WIDL_PORT_BASE_ = $(WIDL_PORT_BASE)$(SEP) +WIDL_PORT_INT = $(INTERMEDIATE_)$(WIDL_PORT_BASE) +WIDL_PORT_INT_ = $(WIDL_PORT_INT)$(SEP) +WIDL_PORT_OUT = $(OUTPUT_)$(WIDL_PORT_BASE) +WIDL_PORT_OUT_ = $(WIDL_PORT_OUT)$(SEP) + +$(WIDL_PORT_INT): | $(WIDL_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WIDL_PORT_OUT): | $(WIDL_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WIDL_TARGET = \ + $(EXEPREFIX)$(WIDL_OUT_)widl$(EXEPOSTFIX) + +WIDL_SOURCES = $(addprefix $(WIDL_BASE_), \ + client.c \ + hash.c \ + header.c \ + lex.yy.c \ + proxy.c \ + server.c \ + typelib.c \ + utils.c \ + widl.c \ + write_msft.c \ + y.tab.c \ + port$(SEP)mkstemps.c \ + ) + +WIDL_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(WIDL_SOURCES:.c=.o)) + +WIDL_HOST_CFLAGS = -g -Werror -Wall \ + -DINT16=SHORT -D__USE_W32API -DYYDEBUG=1 \ + -I$(WIDL_BASE) -I$(WPP_BASE) \ + -Iinclude/wine -Iinclude -Iw32api/include + +WIDL_HOST_LFLAGS = -g + +WIDL_LIBS = $(WPP_TARGET) + +.PHONY: widl +widl: $(WIDL_TARGET) + +$(WIDL_TARGET): $(WIDL_OBJECTS) $(WIDL_LIBS) | $(WIDL_OUT) + $(ECHO_LD) + ${host_gcc} $(WIDL_OBJECTS) $(WIDL_LIBS) $(WIDL_HOST_LFLAGS) -o $@ + +$(WIDL_INT_)client.o: $(WIDL_BASE_)client.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)hash.o: $(WIDL_BASE_)hash.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)header.o: $(WIDL_BASE_)header.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)lex.yy.o: $(WIDL_BASE_)lex.yy.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)proxy.o: $(WIDL_BASE_)proxy.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)server.o: $(WIDL_BASE_)server.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)typelib.o: $(WIDL_BASE_)typelib.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)utils.o: $(WIDL_BASE_)utils.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)widl.o: $(WIDL_BASE_)widl.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)write_msft.o: $(WIDL_BASE_)write_msft.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_INT_)y.tab.o: $(WIDL_BASE_)y.tab.c | $(WIDL_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +$(WIDL_PORT_INT_)mkstemps.o: $(WIDL_PORT_BASE_)mkstemps.c | $(WIDL_PORT_INT) + $(ECHO_CC) + ${host_gcc} $(WIDL_HOST_CFLAGS) -c $< -o $@ + +.PHONY: widl_clean +widl_clean: + -@$(rm) $(WIDL_TARGET) $(WIDL_OBJECTS) 2>$(NUL) +clean: widl_clean diff --git a/reactos/tools/winebuild/winebuild.mak b/reactos/tools/winebuild/winebuild.mak new file mode 100644 index 00000000000..ca90c91626c --- /dev/null +++ b/reactos/tools/winebuild/winebuild.mak @@ -0,0 +1,81 @@ +WINEBUILD_BASE = $(TOOLS_BASE)$(SEP)winebuild +WINEBUILD_BASE_ = $(WINEBUILD_BASE)$(SEP) +WINEBUILD_INT = $(INTERMEDIATE_)$(WINEBUILD_BASE) +WINEBUILD_INT_ = $(WINEBUILD_INT)$(SEP) +WINEBUILD_OUT = $(OUTPUT_)$(WINEBUILD_BASE) +WINEBUILD_OUT_ = $(WINEBUILD_OUT)$(SEP) + +$(WINEBUILD_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WINEBUILD_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WINEBUILD_TARGET = \ + $(EXEPREFIX)$(WINEBUILD_OUT_)winebuild$(EXEPOSTFIX) + +WINEBUILD_SOURCES = $(addprefix $(WINEBUILD_BASE_), \ + import.c \ + main.c \ + parser.c \ + res16.c \ + res32.c \ + spec32.c \ + utils.c \ + mkstemps.c \ + ) + +WINEBUILD_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(WINEBUILD_SOURCES:.c=.o)) + +WINEBUILD_HOST_CFLAGS = -D__USE_W32API -Iinclude/wine + +WINEBUILD_HOST_LFLAGS = -g + +.PHONY: winebuild +winebuild: $(WINEBUILD_TARGET) + +$(WINEBUILD_TARGET): $(WINEBUILD_OBJECTS) | $(WINEBUILD_OUT) + $(ECHO_LD) + ${host_gcc} $(WINEBUILD_OBJECTS) $(WINEBUILD_HOST_LFLAGS) -o $@ + +$(WINEBUILD_INT_)import.o: $(WINEBUILD_BASE_)import.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)main.o: $(WINEBUILD_BASE_)main.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)parser.o: $(WINEBUILD_BASE_)parser.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)res16.o: $(WINEBUILD_BASE_)res16.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)res32.o: $(WINEBUILD_BASE_)res32.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)spec32.o: $(WINEBUILD_BASE_)spec32.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)utils.o: $(WINEBUILD_BASE_)utils.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +$(WINEBUILD_INT_)mkstemps.o: $(WINEBUILD_BASE_)mkstemps.c | $(WINEBUILD_INT) + $(ECHO_CC) + ${host_gcc} $(WINEBUILD_HOST_CFLAGS) -c $< -o $@ + +.PHONY: winebuild_clean +winebuild_clean: + -@$(rm) $(WINEBUILD_TARGET) $(WINEBUILD_OBJECTS) 2>$(NUL) +clean: winebuild_clean diff --git a/reactos/tools/wmc/makefile b/reactos/tools/wmc/makefile deleted file mode 100644 index 8b0c8ad6218..00000000000 --- a/reactos/tools/wmc/makefile +++ /dev/null @@ -1,57 +0,0 @@ -# -# ReactOS/Wine message compiler -# -PATH_TO_TOP = ../.. - -TARGET=wmc$(EXE_POSTFIX) - -all: $(TARGET) - -OBJECTS = getopt.o lang.o mcl.o utils.o wmc.o write.o y_tab.o misc.o - -CLEAN_FILES = *.o wmc$(EXE_POSTFIX) - -wmc$(EXE_POSTFIX): $(OBJECTS) - $(HOST_CC) $(OBJECTS) -g -o wmc$(EXE_POSTFIX) - -HOST_CFLAGS = -I. -Werror -Wall - -getopt.o: getopt.c - $(HOST_CC) $(HOST_CFLAGS) -g -c getopt.c -o getopt.o - -lang.o: lang.c - $(HOST_CC) $(HOST_CFLAGS) -g -c lang.c -o lang.o - -misc.o: misc.c - $(HOST_CC) $(HOST_CFLAGS) -g -c misc.c -o misc.o - -mcl.o: mcl.c - $(HOST_CC) $(HOST_CFLAGS) -g -c mcl.c -o mcl.o - -utils.o: utils.c - $(HOST_CC) $(HOST_CFLAGS) -g -c utils.c -o utils.o - -wmc.o: wmc.c - $(HOST_CC) $(HOST_CFLAGS) -g -c wmc.c -o wmc.o - -write.o: write.c - $(HOST_CC) $(HOST_CFLAGS) -g -c write.c -o write.o - -y_tab.o: y_tab.c - $(HOST_CC) $(HOST_CFLAGS) -g -c y_tab.c -o y_tab.o - -ifeq ($(HOST_TYPE),unix) -clean: - rm -f *.o - rm -f wmc$(EXE_POSTFIX) -else -clean: - -del *.o - -del wmc$(EXE_POSTFIX) -endif - -.phony: clean - -include $(PATH_TO_TOP)/rules.mak - -# EOF diff --git a/reactos/tools/wmc/wmc.mak b/reactos/tools/wmc/wmc.mak new file mode 100644 index 00000000000..c8ad33fa774 --- /dev/null +++ b/reactos/tools/wmc/wmc.mak @@ -0,0 +1,81 @@ +WMC_BASE = $(TOOLS_BASE_)wmc +WMC_BASE_ = $(WMC_BASE)$(SEP) +WMC_INT = $(INTERMEDIATE_)$(WMC_BASE) +WMC_INT_ = $(WMC_INT)$(SEP) +WMC_OUT = $(OUTPUT_)$(WMC_BASE) +WMC_OUT_ = $(WMC_OUT)$(SEP) + +$(WMC_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WMC_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WMC_TARGET = \ + $(EXEPREFIX)$(WMC_OUT_)wmc$(EXEPOSTFIX) + +WMC_SOURCES = $(addprefix $(WMC_BASE_), \ + getopt.c \ + lang.c \ + mcl.c \ + utils.c \ + wmc.c \ + write.c \ + y_tab.c \ + misc.c \ + ) + +WMC_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(WMC_SOURCES:.c=.o)) + +WMC_HOST_CXXFLAGS = -I$(WMC_BASE) -g -Werror -Wall + +WMC_HOST_LFLAGS = -g + +.PHONY: wmc +wmc: $(WMC_TARGET) + +$(WMC_TARGET): $(WMC_OBJECTS) | $(WMC_OUT) + $(ECHO_LD) + ${host_gcc} $(WMC_OBJECTS) $(WMC_HOST_LFLAGS) -o $@ + +$(WMC_INT_)getopt.o: $(WMC_BASE_)getopt.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)lang.o: $(WMC_BASE_)lang.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)mcl.o: $(WMC_BASE_)mcl.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)utils.o: $(WMC_BASE_)utils.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)wmc.o: $(WMC_BASE_)wmc.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)write.o: $(WMC_BASE_)write.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)y_tab.o: $(WMC_BASE_)y_tab.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +$(WMC_INT_)misc.o: $(WMC_BASE_)misc.c | $(WMC_INT) + $(ECHO_CC) + ${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@ + +.PHONY: wmc_clean +wmc_clean: + -@$(rm) $(WMC_TARGET) $(WMC_OBJECTS) 2>$(NUL) +clean: wmc_clean diff --git a/reactos/tools/wmc/write.c b/reactos/tools/wmc/write.c index d2b5a966a88..7571eeb243e 100644 --- a/reactos/tools/wmc/write.c +++ b/reactos/tools/wmc/write.c @@ -577,7 +577,7 @@ void write_bin_files(void) for (lbp = lanblockhead; lbp; lbp = lbp->next) { - unsigned offs = 4 * (lbp->nblk * 3 + 1); + unsigned offs = 4 * (lbp->nblk * 3 + 1); char *cptr = NULL; for(i = 0; i < ntab; i++) diff --git a/reactos/tools/wpp/wpp.mak b/reactos/tools/wpp/wpp.mak new file mode 100644 index 00000000000..5e271463897 --- /dev/null +++ b/reactos/tools/wpp/wpp.mak @@ -0,0 +1,59 @@ +WPP_BASE = $(TOOLS_BASE_)wpp +WPP_BASE_ = $(WPP_BASE)$(SEP) +WPP_INT = $(INTERMEDIATE_)$(WPP_BASE) +WPP_INT_ = $(WPP_INT)$(SEP) +WPP_OUT = $(OUTPUT_)$(WPP_BASE) +WPP_OUT_ = $(WPP_OUT)$(SEP) + +$(WPP_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WPP_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WPP_TARGET = \ + $(WPP_OUT_)libwpp.a + +WPP_SOURCES = $(addprefix $(WPP_BASE_), \ + lex.yy.c \ + preproc.c \ + wpp.c \ + wpp.tab.c \ + ) + +WPP_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(WPP_SOURCES:.c=.o)) + +WPP_HOST_CFLAGS = -D__USE_W32API -I$(WPP_BASE) -Iinclude -Iinclude/wine -g + +.PHONY: wpp +wpp: $(WPP_TARGET) + +$(WPP_TARGET): $(WPP_OBJECTS) | $(WPP_OUT) + $(ECHO_AR) + ${host_ar} -rc $(WPP_TARGET) $(WPP_OBJECTS) + +$(WPP_INT_)lex.yy.o: $(WPP_BASE_)lex.yy.c | $(WPP_INT) + $(ECHO_CC) + ${host_gcc} $(WPP_HOST_CFLAGS) -c $< -o $@ + +$(WPP_INT_)preproc.o: $(WPP_BASE_)preproc.c | $(WPP_INT) + $(ECHO_CC) + ${host_gcc} $(WPP_HOST_CFLAGS) -c $< -o $@ + +$(WPP_INT_)wpp.o: $(WPP_BASE_)wpp.c | $(WPP_INT) + $(ECHO_CC) + ${host_gcc} $(WPP_HOST_CFLAGS) -c $< -o $@ + +$(WPP_INT_)wpp.tab.o: $(WPP_BASE_)wpp.tab.c | $(WPP_INT) + $(ECHO_CC) + ${host_gcc} $(WPP_HOST_CFLAGS) -c $< -o $@ + +.PHONY: wpp_clean +wpp_clean: + -@$(rm) $(WPP_TARGET) $(WPP_OBJECTS) 2>$(NUL) +clean: wpp_clean diff --git a/reactos/tools/wrc/parser.y b/reactos/tools/wrc/parser.y index 6add4b2159d..7eb3d01fc21 100644 --- a/reactos/tools/wrc/parser.y +++ b/reactos/tools/wrc/parser.y @@ -1002,8 +1002,8 @@ optional_style_pair style : style '|' style { $$ = new_style($1->or_mask | $3->or_mask, $1->and_mask | $3->and_mask); free($1); free($3);} | '(' style ')' { $$ = $2; } - | any_num { $$ = new_style($1, 0); } - | tNOT any_num { $$ = new_style(0, $2); } + | xpr { $$ = new_style($1, 0); } + | tNOT xpr { $$ = new_style(0, $2); } ; ctlclass @@ -2249,27 +2249,32 @@ static event_t *add_event(int key, int id, int flags, event_t *prev) static event_t *add_string_event(string_t *key, int id, int flags, event_t *prev) { - int keycode = 0; + int keycode = 0, keysym = 0; event_t *ev = new_event(); - if(key->type != str_char) - yyerror("Key code must be an ascii string"); + if(key->type == str_char) + keysym = key->str.cstr[0]; + else + keysym = key->str.wstr[0]; - if((flags & WRC_AF_VIRTKEY) && (!isupper(key->str.cstr[0] & 0xff) && !isdigit(key->str.cstr[0] & 0xff))) + if((flags & WRC_AF_VIRTKEY) && (!isupper(keysym & 0xff) && !isdigit(keysym & 0xff))) yyerror("VIRTKEY code is not equal to ascii value"); - if(key->str.cstr[0] == '^' && (flags & WRC_AF_CONTROL) != 0) + if(keysym == '^' && (flags & WRC_AF_CONTROL) != 0) { yyerror("Cannot use both '^' and CONTROL modifier"); } - else if(key->str.cstr[0] == '^') + else if(keysym == '^') { - keycode = toupper(key->str.cstr[1]) - '@'; + if(key->type == str_char) + keycode = toupper(key->str.cstr[1]) - '@'; + else + keycode = toupper(key->str.wstr[1]) - '@'; if(keycode >= ' ') yyerror("Control-code out of range"); } else - keycode = key->str.cstr[0]; + keycode = keysym; ev->key = keycode; ev->id = id; ev->flags = flags & ~WRC_AF_ASCII; diff --git a/reactos/tools/wrc/wrc.mak b/reactos/tools/wrc/wrc.mak new file mode 100644 index 00000000000..670d9c0e793 --- /dev/null +++ b/reactos/tools/wrc/wrc.mak @@ -0,0 +1,119 @@ +WRC_BASE = $(TOOLS_BASE_)wrc +WRC_BASE_ = $(WRC_BASE)$(SEP) +WRC_INT = $(INTERMEDIATE_)$(WRC_BASE) +WRC_INT_ = $(WRC_INT)$(SEP) +WRC_OUT = $(OUTPUT_)$(WRC_BASE) +WRC_OUT_ = $(WRC_OUT)$(SEP) + +$(WRC_INT): | $(TOOLS_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WRC_OUT): | $(TOOLS_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WRC_PORT_BASE = $(WRC_BASE)$(SEP)port +WRC_PORT_BASE_ = $(WRC_PORT_BASE)$(SEP) +WRC_PORT_INT = $(INTERMEDIATE_)$(WRC_PORT_BASE) +WRC_PORT_INT_ = $(WRC_PORT_INT)$(SEP) +WRC_PORT_OUT = $(OUTPUT_)$(WRC_PORT_BASE) +WRC_PORT_OUT_ = $(WRC_PORT_OUT)$(SEP) + +$(WRC_PORT_INT): | $(WRC_INT) + $(ECHO_MKDIR) + ${mkdir} $@ + +ifneq ($(INTERMEDIATE),$(OUTPUT)) +$(WRC_PORT_OUT): | $(WRC_OUT) + $(ECHO_MKDIR) + ${mkdir} $@ +endif + +WRC_TARGET = \ + $(EXEPREFIX)$(WRC_BASE_)wrc$(EXEPOSTFIX) + +WRC_SOURCES = $(addprefix $(WRC_BASE_), \ + dumpres.c \ + genres.c \ + newstruc.c \ + readres.c \ + translation.c \ + utils.c \ + wrc.c \ + writeres.c \ + y.tab.c \ + lex.yy.c \ + port$(SEP)mkstemps.c \ + ) + +WRC_OBJECTS = \ + $(addprefix $(INTERMEDIATE_), $(WRC_SOURCES:.c=.o)) + +WRC_HOST_CFLAGS = -I$(WRC_BASE) -g -Werror -Wall \ + -D__USE_W32API -DWINE_UNICODE_API= \ + -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \ + -I$(UNICODE_BASE) -I$(WPP_BASE) \ + -Iinclude/wine -Iinclude -Iw32api/include + +WRC_HOST_LFLAGS = -g + +WRC_LIBS = $(UNICODE_TARGET) $(WPP_TARGET) + +.PHONY: wrc +wrc: $(WRC_TARGET) + +$(WRC_TARGET): $(WRC_OBJECTS) $(WRC_LIBS) | $(WRC_OUT) + $(ECHO_LD) + ${host_gcc} $(WRC_OBJECTS) $(WRC_LIBS) $(WRC_HOST_LFLAGS) -o $@ + +$(WRC_INT_)dumpres.o: $(WRC_BASE_)dumpres.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)genres.o: $(WRC_BASE_)genres.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)newstruc.o: $(WRC_BASE_)newstruc.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)readres.o: $(WRC_BASE_)readres.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)translation.o: $(WRC_BASE_)translation.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)utils.o: $(WRC_BASE_)utils.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)wrc.o: $(WRC_BASE_)wrc.c $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)writeres.o: $(WRC_BASE_)writeres.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)y.tab.o: $(WRC_BASE_)y.tab.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_INT_)lex.yy.o: $(WRC_BASE_)lex.yy.c | $(WRC_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +$(WRC_PORT_INT_)mkstemps.o: $(WRC_PORT_BASE_)mkstemps.c | $(WRC_PORT_INT) + $(ECHO_CC) + ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@ + +.PHONY: wrc_clean +wrc_clean: + -@$(rm) $(WRC_TARGET) $(WRC_OBJECTS) 2>$(NUL) +clean: wrc_clean diff --git a/reactos/tools/wrc/y.tab.c b/reactos/tools/wrc/y.tab.c index 48e6246bce4..1905fbe9f84 100644 --- a/reactos/tools/wrc/y.tab.c +++ b/reactos/tools/wrc/y.tab.c @@ -1,92 +1,230 @@ -/* A Bison parser, made from ./parser.y - by GNU bison 1.35. */ +/* A Bison parser, made by GNU Bison 1.875b. */ -#define YYBISON 1 /* Identify Bison output. */ +/* Skeleton parser for Yacc-like parsing with Bison, + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. -# define tNL 257 -# define tNUMBER 258 -# define tLNUMBER 259 -# define tSTRING 260 -# define tIDENT 261 -# define tFILENAME 262 -# define tRAWDATA 263 -# define tACCELERATORS 264 -# define tBITMAP 265 -# define tCURSOR 266 -# define tDIALOG 267 -# define tDIALOGEX 268 -# define tMENU 269 -# define tMENUEX 270 -# define tMESSAGETABLE 271 -# define tRCDATA 272 -# define tVERSIONINFO 273 -# define tSTRINGTABLE 274 -# define tFONT 275 -# define tFONTDIR 276 -# define tICON 277 -# define tAUTO3STATE 278 -# define tAUTOCHECKBOX 279 -# define tAUTORADIOBUTTON 280 -# define tCHECKBOX 281 -# define tDEFPUSHBUTTON 282 -# define tPUSHBUTTON 283 -# define tRADIOBUTTON 284 -# define tSTATE3 285 -# define tGROUPBOX 286 -# define tCOMBOBOX 287 -# define tLISTBOX 288 -# define tSCROLLBAR 289 -# define tCONTROL 290 -# define tEDITTEXT 291 -# define tRTEXT 292 -# define tCTEXT 293 -# define tLTEXT 294 -# define tBLOCK 295 -# define tVALUE 296 -# define tSHIFT 297 -# define tALT 298 -# define tASCII 299 -# define tVIRTKEY 300 -# define tGRAYED 301 -# define tCHECKED 302 -# define tINACTIVE 303 -# define tNOINVERT 304 -# define tPURE 305 -# define tIMPURE 306 -# define tDISCARDABLE 307 -# define tLOADONCALL 308 -# define tPRELOAD 309 -# define tFIXED 310 -# define tMOVEABLE 311 -# define tCLASS 312 -# define tCAPTION 313 -# define tCHARACTERISTICS 314 -# define tEXSTYLE 315 -# define tSTYLE 316 -# define tVERSION 317 -# define tLANGUAGE 318 -# define tFILEVERSION 319 -# define tPRODUCTVERSION 320 -# define tFILEFLAGSMASK 321 -# define tFILEOS 322 -# define tFILETYPE 323 -# define tFILEFLAGS 324 -# define tFILESUBTYPE 325 -# define tMENUBARBREAK 326 -# define tMENUBREAK 327 -# define tMENUITEM 328 -# define tPOPUP 329 -# define tSEPARATOR 330 -# define tHELP 331 -# define tTOOLBAR 332 -# define tBUTTON 333 -# define tBEGIN 334 -# define tEND 335 -# define tDLGINIT 336 -# define tNOT 337 -# define pUPM 338 + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. -#line 1 "./parser.y" + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +/* As a special exception, when this file is copied by Bison into a + Bison output file, you may use that output file without restriction. + This special exception was added by the Free Software Foundation + in version 1.24 of Bison. */ + +/* Written by Richard Stallman by simplifying the original so called + ``semantic'' parser. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +/* Identify Bison output. */ +#define YYBISON 1 + +/* Skeleton name. */ +#define YYSKELETON_NAME "yacc.c" + +/* Pure parsers. */ +#define YYPURE 0 + +/* Using locations. */ +#define YYLSP_NEEDED 0 + + + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + tNL = 258, + tNUMBER = 259, + tLNUMBER = 260, + tSTRING = 261, + tIDENT = 262, + tFILENAME = 263, + tRAWDATA = 264, + tACCELERATORS = 265, + tBITMAP = 266, + tCURSOR = 267, + tDIALOG = 268, + tDIALOGEX = 269, + tMENU = 270, + tMENUEX = 271, + tMESSAGETABLE = 272, + tRCDATA = 273, + tVERSIONINFO = 274, + tSTRINGTABLE = 275, + tFONT = 276, + tFONTDIR = 277, + tICON = 278, + tAUTO3STATE = 279, + tAUTOCHECKBOX = 280, + tAUTORADIOBUTTON = 281, + tCHECKBOX = 282, + tDEFPUSHBUTTON = 283, + tPUSHBUTTON = 284, + tRADIOBUTTON = 285, + tSTATE3 = 286, + tGROUPBOX = 287, + tCOMBOBOX = 288, + tLISTBOX = 289, + tSCROLLBAR = 290, + tCONTROL = 291, + tEDITTEXT = 292, + tRTEXT = 293, + tCTEXT = 294, + tLTEXT = 295, + tBLOCK = 296, + tVALUE = 297, + tSHIFT = 298, + tALT = 299, + tASCII = 300, + tVIRTKEY = 301, + tGRAYED = 302, + tCHECKED = 303, + tINACTIVE = 304, + tNOINVERT = 305, + tPURE = 306, + tIMPURE = 307, + tDISCARDABLE = 308, + tLOADONCALL = 309, + tPRELOAD = 310, + tFIXED = 311, + tMOVEABLE = 312, + tCLASS = 313, + tCAPTION = 314, + tCHARACTERISTICS = 315, + tEXSTYLE = 316, + tSTYLE = 317, + tVERSION = 318, + tLANGUAGE = 319, + tFILEVERSION = 320, + tPRODUCTVERSION = 321, + tFILEFLAGSMASK = 322, + tFILEOS = 323, + tFILETYPE = 324, + tFILEFLAGS = 325, + tFILESUBTYPE = 326, + tMENUBARBREAK = 327, + tMENUBREAK = 328, + tMENUITEM = 329, + tPOPUP = 330, + tSEPARATOR = 331, + tHELP = 332, + tTOOLBAR = 333, + tBUTTON = 334, + tBEGIN = 335, + tEND = 336, + tDLGINIT = 337, + tNOT = 338, + pUPM = 339 + }; +#endif +#define tNL 258 +#define tNUMBER 259 +#define tLNUMBER 260 +#define tSTRING 261 +#define tIDENT 262 +#define tFILENAME 263 +#define tRAWDATA 264 +#define tACCELERATORS 265 +#define tBITMAP 266 +#define tCURSOR 267 +#define tDIALOG 268 +#define tDIALOGEX 269 +#define tMENU 270 +#define tMENUEX 271 +#define tMESSAGETABLE 272 +#define tRCDATA 273 +#define tVERSIONINFO 274 +#define tSTRINGTABLE 275 +#define tFONT 276 +#define tFONTDIR 277 +#define tICON 278 +#define tAUTO3STATE 279 +#define tAUTOCHECKBOX 280 +#define tAUTORADIOBUTTON 281 +#define tCHECKBOX 282 +#define tDEFPUSHBUTTON 283 +#define tPUSHBUTTON 284 +#define tRADIOBUTTON 285 +#define tSTATE3 286 +#define tGROUPBOX 287 +#define tCOMBOBOX 288 +#define tLISTBOX 289 +#define tSCROLLBAR 290 +#define tCONTROL 291 +#define tEDITTEXT 292 +#define tRTEXT 293 +#define tCTEXT 294 +#define tLTEXT 295 +#define tBLOCK 296 +#define tVALUE 297 +#define tSHIFT 298 +#define tALT 299 +#define tASCII 300 +#define tVIRTKEY 301 +#define tGRAYED 302 +#define tCHECKED 303 +#define tINACTIVE 304 +#define tNOINVERT 305 +#define tPURE 306 +#define tIMPURE 307 +#define tDISCARDABLE 308 +#define tLOADONCALL 309 +#define tPRELOAD 310 +#define tFIXED 311 +#define tMOVEABLE 312 +#define tCLASS 313 +#define tCAPTION 314 +#define tCHARACTERISTICS 315 +#define tEXSTYLE 316 +#define tSTYLE 317 +#define tVERSION 318 +#define tLANGUAGE 319 +#define tFILEVERSION 320 +#define tPRODUCTVERSION 321 +#define tFILEFLAGSMASK 322 +#define tFILEOS 323 +#define tFILETYPE 324 +#define tFILEFLAGS 325 +#define tFILESUBTYPE 326 +#define tMENUBARBREAK 327 +#define tMENUBREAK 328 +#define tMENUITEM 329 +#define tPOPUP 330 +#define tSEPARATOR 331 +#define tHELP 332 +#define tTOOLBAR 333 +#define tBUTTON 334 +#define tBEGIN 335 +#define tEND 336 +#define tDLGINIT 337 +#define tNOT 338 +#define pUPM 339 + + + + +/* Copy the first part of user declarations. */ +#line 1 "parser.y" /* * Copyright 1994 Martin von Loewis @@ -326,9 +464,23 @@ static resource_t *build_fontdir(resource_t **fnt, int nfnt); static int rsrcid_to_token(int lookahead); -#line 240 "./parser.y" -#ifndef YYSTYPE -typedef union{ + +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 1 +#endif + +/* Enabling verbose error messages. */ +#ifdef YYERROR_VERBOSE +# undef YYERROR_VERBOSE +# define YYERROR_VERBOSE 1 +#else +# define YYERROR_VERBOSE 0 +#endif + +#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +#line 240 "parser.y" +typedef union YYSTYPE { string_t *str; int num; int *iptr; @@ -369,671 +521,23 @@ typedef union{ style_pair_t *styles; style_t *style; ani_any_t *ani; -} yystype; -# define YYSTYPE yystype +} YYSTYPE; +/* Line 191 of yacc.c. */ +#line 527 "y.tab.c" +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif -#ifndef YYDEBUG -# define YYDEBUG 1 -#endif -#define YYFINAL 568 -#define YYFLAG -32768 -#define YYNTBASE 96 - -/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ -#define YYTRANSLATE(x) ((unsigned)(x) <= 338 ? yytranslate[x] : 177) - -/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ -static const char yytranslate[] = -{ - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 85, 2, - 94, 95, 88, 86, 93, 87, 2, 89, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 84, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 83, 2, 90, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 1, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 91, 92 -}; - -#if YYDEBUG -static const short yyprhs[] = -{ - 0, 0, 2, 3, 6, 9, 13, 17, 19, 20, - 26, 27, 29, 31, 33, 35, 37, 39, 41, 43, - 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, - 65, 67, 69, 71, 73, 77, 81, 85, 89, 93, - 97, 101, 105, 109, 111, 113, 120, 121, 127, 133, - 134, 137, 139, 143, 145, 147, 149, 151, 153, 155, - 169, 170, 174, 178, 182, 185, 189, 193, 196, 199, - 202, 203, 207, 211, 215, 219, 223, 227, 231, 235, - 239, 243, 247, 251, 255, 259, 263, 267, 271, 282, - 295, 306, 307, 312, 319, 328, 346, 362, 367, 368, - 371, 376, 380, 384, 386, 389, 391, 393, 408, 409, - 413, 417, 421, 424, 427, 431, 435, 438, 441, 444, - 445, 449, 453, 457, 461, 465, 469, 473, 477, 481, - 485, 489, 493, 497, 501, 505, 509, 513, 524, 544, - 561, 576, 589, 590, 592, 593, 596, 606, 607, 610, - 615, 619, 620, 627, 631, 637, 638, 642, 646, 650, - 654, 658, 662, 667, 671, 672, 677, 681, 687, 688, - 691, 697, 704, 705, 708, 713, 720, 729, 734, 738, - 739, 744, 745, 747, 754, 755, 765, 775, 779, 783, - 787, 791, 795, 796, 799, 805, 806, 809, 811, 816, - 821, 823, 827, 837, 838, 842, 845, 846, 849, 852, - 854, 856, 858, 860, 862, 864, 866, 867, 870, 873, - 876, 881, 884, 887, 892, 894, 896, 899, 901, 904, - 906, 910, 914, 919, 923, 928, 932, 934, 936, 937, - 939, 941, 945, 949, 953, 957, 961, 965, 969, 972, - 975, 978, 982, 984, 987, 989 -}; -static const short yyrhs[] = -{ - 97, 0, 0, 97, 98, 0, 97, 3, 0, 174, - 100, 103, 0, 7, 100, 103, 0, 150, 0, 0, - 64, 99, 174, 93, 174, 0, 0, 174, 0, 7, - 0, 101, 0, 6, 0, 115, 0, 105, 0, 106, - 0, 120, 0, 131, 0, 112, 0, 108, 0, 109, - 0, 107, 0, 141, 0, 145, 0, 110, 0, 111, - 0, 161, 0, 113, 0, 154, 0, 8, 0, 7, - 0, 6, 0, 11, 163, 172, 0, 12, 163, 172, - 0, 23, 163, 172, 0, 21, 163, 172, 0, 22, - 163, 172, 0, 17, 163, 172, 0, 18, 163, 172, - 0, 82, 163, 172, 0, 114, 163, 172, 0, 4, - 0, 7, 0, 10, 163, 166, 80, 116, 81, 0, - 0, 116, 6, 93, 174, 117, 0, 116, 174, 93, - 174, 117, 0, 0, 93, 118, 0, 119, 0, 118, - 93, 119, 0, 50, 0, 43, 0, 36, 0, 44, - 0, 45, 0, 46, 0, 13, 163, 174, 93, 174, - 93, 174, 93, 174, 121, 80, 122, 81, 0, 0, - 121, 62, 129, 0, 121, 61, 129, 0, 121, 59, - 6, 0, 121, 127, 0, 121, 58, 102, 0, 121, - 15, 101, 0, 121, 167, 0, 121, 168, 0, 121, - 169, 0, 0, 122, 36, 126, 0, 122, 37, 124, - 0, 122, 34, 124, 0, 122, 33, 124, 0, 122, - 35, 124, 0, 122, 27, 123, 0, 122, 28, 123, - 0, 122, 32, 123, 0, 122, 29, 123, 0, 122, - 30, 123, 0, 122, 24, 123, 0, 122, 31, 123, - 0, 122, 25, 123, 0, 122, 26, 123, 0, 122, - 40, 123, 0, 122, 39, 123, 0, 122, 38, 123, - 0, 122, 23, 102, 153, 174, 93, 174, 93, 174, - 125, 0, 6, 153, 174, 93, 174, 93, 174, 93, - 174, 93, 174, 128, 0, 174, 93, 174, 93, 174, - 93, 174, 93, 174, 128, 0, 0, 93, 174, 93, - 174, 0, 93, 174, 93, 174, 93, 129, 0, 93, - 174, 93, 174, 93, 129, 93, 129, 0, 102, 153, - 174, 93, 130, 93, 129, 93, 174, 93, 174, 93, - 174, 93, 174, 93, 129, 0, 102, 153, 174, 93, - 130, 93, 129, 93, 174, 93, 174, 93, 174, 93, - 174, 0, 21, 174, 93, 6, 0, 0, 93, 129, - 0, 93, 129, 93, 129, 0, 129, 83, 129, 0, - 94, 129, 95, 0, 176, 0, 91, 176, 0, 174, - 0, 6, 0, 14, 163, 174, 93, 174, 93, 174, - 93, 174, 138, 132, 80, 133, 81, 0, 0, 132, - 62, 129, 0, 132, 61, 129, 0, 132, 59, 6, - 0, 132, 127, 0, 132, 139, 0, 132, 58, 102, - 0, 132, 15, 101, 0, 132, 167, 0, 132, 168, - 0, 132, 169, 0, 0, 133, 36, 134, 0, 133, - 37, 136, 0, 133, 34, 136, 0, 133, 33, 136, - 0, 133, 35, 136, 0, 133, 27, 135, 0, 133, - 28, 135, 0, 133, 32, 135, 0, 133, 29, 135, - 0, 133, 30, 135, 0, 133, 24, 135, 0, 133, - 31, 135, 0, 133, 25, 135, 0, 133, 26, 135, - 0, 133, 40, 135, 0, 133, 39, 135, 0, 133, - 38, 135, 0, 133, 23, 102, 153, 174, 93, 174, - 93, 174, 125, 0, 102, 153, 174, 93, 130, 93, - 129, 93, 174, 93, 174, 93, 174, 93, 174, 93, - 129, 138, 137, 0, 102, 153, 174, 93, 130, 93, - 129, 93, 174, 93, 174, 93, 174, 93, 174, 137, - 0, 6, 153, 174, 93, 174, 93, 174, 93, 174, - 93, 174, 128, 138, 137, 0, 174, 93, 174, 93, - 174, 93, 174, 93, 174, 128, 138, 137, 0, 0, - 170, 0, 0, 93, 174, 0, 21, 174, 93, 6, - 93, 174, 93, 174, 140, 0, 0, 93, 174, 0, - 15, 163, 166, 142, 0, 80, 143, 81, 0, 0, - 143, 74, 6, 153, 174, 144, 0, 143, 74, 76, - 0, 143, 75, 6, 144, 142, 0, 0, 153, 48, - 144, 0, 153, 47, 144, 0, 153, 77, 144, 0, - 153, 49, 144, 0, 153, 72, 144, 0, 153, 73, - 144, 0, 16, 163, 166, 146, 0, 80, 147, 81, - 0, 0, 147, 74, 6, 148, 0, 147, 74, 76, - 0, 147, 75, 6, 149, 146, 0, 0, 93, 174, - 0, 93, 173, 93, 173, 144, 0, 93, 173, 93, - 173, 93, 174, 0, 0, 93, 174, 0, 93, 173, - 93, 174, 0, 93, 173, 93, 173, 93, 174, 0, - 93, 173, 93, 173, 93, 173, 93, 174, 0, 151, - 80, 152, 81, 0, 20, 163, 166, 0, 0, 152, - 174, 153, 6, 0, 0, 93, 0, 19, 163, 155, - 80, 156, 81, 0, 0, 155, 65, 174, 93, 174, - 93, 174, 93, 174, 0, 155, 66, 174, 93, 174, - 93, 174, 93, 174, 0, 155, 70, 174, 0, 155, - 67, 174, 0, 155, 68, 174, 0, 155, 69, 174, - 0, 155, 71, 174, 0, 0, 156, 157, 0, 41, - 6, 80, 158, 81, 0, 0, 158, 159, 0, 157, - 0, 42, 6, 93, 6, 0, 42, 6, 93, 160, - 0, 174, 0, 160, 93, 174, 0, 78, 163, 174, - 93, 174, 166, 80, 162, 81, 0, 0, 162, 79, - 174, 0, 162, 76, 0, 0, 163, 164, 0, 163, - 165, 0, 55, 0, 57, 0, 53, 0, 51, 0, - 54, 0, 56, 0, 52, 0, 0, 166, 167, 0, - 166, 168, 0, 166, 169, 0, 64, 174, 93, 174, - 0, 60, 174, 0, 63, 174, 0, 166, 80, 171, - 81, 0, 9, 0, 4, 0, 87, 4, 0, 5, - 0, 87, 5, 0, 6, 0, 171, 153, 9, 0, - 171, 153, 4, 0, 171, 153, 87, 4, 0, 171, - 153, 5, 0, 171, 153, 87, 5, 0, 171, 153, - 6, 0, 104, 0, 170, 0, 0, 174, 0, 175, - 0, 175, 86, 175, 0, 175, 87, 175, 0, 175, - 83, 175, 0, 175, 85, 175, 0, 175, 88, 175, - 0, 175, 89, 175, 0, 175, 84, 175, 0, 90, - 175, 0, 87, 175, 0, 86, 175, 0, 94, 175, - 95, 0, 176, 0, 91, 176, 0, 4, 0, 5, - 0 -}; - -#endif - -#if YYDEBUG -/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -static const short yyrline[] = -{ - 0, 361, 395, 396, 466, 472, 484, 494, 502, 502, - 546, 552, 559, 569, 570, 579, 580, 581, 605, 606, - 612, 613, 614, 615, 639, 640, 646, 647, 648, 649, - 650, 654, 655, 656, 660, 664, 680, 702, 712, 720, - 728, 732, 736, 747, 752, 761, 785, 786, 787, 796, - 797, 800, 801, 804, 805, 806, 807, 808, 809, 814, - 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, - 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, - 872, 873, 874, 875, 876, 877, 878, 879, 881, 891, - 916, 937, 940, 945, 952, 963, 977, 992, 997, 998, - 999, 1003, 1004, 1005, 1006, 1010, 1015, 1023, 1067, 1068, - 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1080, - 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1091, - 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1100, 1110, 1135, - 1151, 1179, 1202, 1203, 1206, 1207, 1211, 1218, 1219, 1223, - 1246, 1250, 1251, 1260, 1266, 1285, 1286, 1287, 1288, 1289, - 1290, 1291, 1295, 1320, 1324, 1325, 1341, 1347, 1367, 1368, - 1372, 1380, 1391, 1392, 1396, 1402, 1410, 1430, 1471, 1482, - 1483, 1517, 1518, 1523, 1539, 1540, 1550, 1560, 1567, 1574, - 1581, 1588, 1598, 1599, 1608, 1616, 1617, 1626, 1631, 1637, - 1646, 1647, 1651, 1677, 1678, 1683, 1692, 1693, 1703, 1718, - 1719, 1720, 1721, 1724, 1725, 1726, 1730, 1731, 1739, 1747, - 1765, 1772, 1776, 1780, 1795, 1796, 1797, 1798, 1799, 1800, - 1801, 1802, 1803, 1804, 1805, 1806, 1810, 1811, 1818, 1819, - 1823, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834, - 1835, 1836, 1837, 1838, 1841, 1842 -}; -#endif +/* Copy the second part of user declarations. */ -#if (YYDEBUG) || defined YYERROR_VERBOSE +/* Line 214 of yacc.c. */ +#line 539 "y.tab.c" -/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ -static const char *const yytname[] = -{ - "$", "error", "$undefined.", "tNL", "tNUMBER", "tLNUMBER", "tSTRING", - "tIDENT", "tFILENAME", "tRAWDATA", "tACCELERATORS", "tBITMAP", - "tCURSOR", "tDIALOG", "tDIALOGEX", "tMENU", "tMENUEX", "tMESSAGETABLE", - "tRCDATA", "tVERSIONINFO", "tSTRINGTABLE", "tFONT", "tFONTDIR", "tICON", - "tAUTO3STATE", "tAUTOCHECKBOX", "tAUTORADIOBUTTON", "tCHECKBOX", - "tDEFPUSHBUTTON", "tPUSHBUTTON", "tRADIOBUTTON", "tSTATE3", "tGROUPBOX", - "tCOMBOBOX", "tLISTBOX", "tSCROLLBAR", "tCONTROL", "tEDITTEXT", - "tRTEXT", "tCTEXT", "tLTEXT", "tBLOCK", "tVALUE", "tSHIFT", "tALT", - "tASCII", "tVIRTKEY", "tGRAYED", "tCHECKED", "tINACTIVE", "tNOINVERT", - "tPURE", "tIMPURE", "tDISCARDABLE", "tLOADONCALL", "tPRELOAD", "tFIXED", - "tMOVEABLE", "tCLASS", "tCAPTION", "tCHARACTERISTICS", "tEXSTYLE", - "tSTYLE", "tVERSION", "tLANGUAGE", "tFILEVERSION", "tPRODUCTVERSION", - "tFILEFLAGSMASK", "tFILEOS", "tFILETYPE", "tFILEFLAGS", "tFILESUBTYPE", - "tMENUBARBREAK", "tMENUBREAK", "tMENUITEM", "tPOPUP", "tSEPARATOR", - "tHELP", "tTOOLBAR", "tBUTTON", "tBEGIN", "tEND", "tDLGINIT", "'|'", - "'^'", "'&'", "'+'", "'-'", "'*'", "'/'", "'~'", "tNOT", "pUPM", "','", - "'('", "')'", "resource_file", "resources", "resource", "@1", "usrcvt", - "nameid", "nameid_s", "resource_definition", "filename", "bitmap", - "cursor", "icon", "font", "fontdir", "messagetable", "rcdata", - "dlginit", "userres", "usertype", "accelerators", "events", "acc_opt", - "accs", "acc", "dialog", "dlg_attributes", "ctrls", "lab_ctrl", - "ctrl_desc", "iconinfo", "gen_ctrl", "opt_font", "optional_style_pair", - "style", "ctlclass", "dialogex", "dlgex_attribs", "exctrls", - "gen_exctrl", "lab_exctrl", "exctrl_desc", "opt_data", "helpid", - "opt_exfont", "opt_expr", "menu", "menu_body", "item_definitions", - "item_options", "menuex", "menuex_body", "itemex_definitions", - "itemex_options", "itemex_p_options", "stringtable", "stt_head", - "strings", "opt_comma", "versioninfo", "fix_version", "ver_blocks", - "ver_block", "ver_values", "ver_value", "ver_words", "toolbar", - "toolbar_items", "loadmemopts", "lamo", "lama", "opt_lvc", - "opt_language", "opt_characts", "opt_version", "raw_data", - "raw_elements", "file_raw", "e_expr", "expr", "xpr", "any_num", 0 -}; -#endif - -/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const short yyr1[] = -{ - 0, 96, 97, 97, 97, 98, 98, 98, 99, 98, - 100, 101, 101, 102, 102, 103, 103, 103, 103, 103, - 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, - 103, 104, 104, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 114, 115, 116, 116, 116, 117, - 117, 118, 118, 119, 119, 119, 119, 119, 119, 120, - 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, - 122, 122, 122, 122, 122, 122, 122, 122, 122, 122, - 122, 122, 122, 122, 122, 122, 122, 122, 122, 123, - 124, 125, 125, 125, 125, 126, 126, 127, 128, 128, - 128, 129, 129, 129, 129, 130, 130, 131, 132, 132, - 132, 132, 132, 132, 132, 132, 132, 132, 132, 133, - 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, - 133, 133, 133, 133, 133, 133, 133, 133, 134, 134, - 135, 136, 137, 137, 138, 138, 139, 140, 140, 141, - 142, 143, 143, 143, 143, 144, 144, 144, 144, 144, - 144, 144, 145, 146, 147, 147, 147, 147, 148, 148, - 148, 148, 149, 149, 149, 149, 149, 150, 151, 152, - 152, 153, 153, 154, 155, 155, 155, 155, 155, 155, - 155, 155, 156, 156, 157, 158, 158, 159, 159, 159, - 160, 160, 161, 162, 162, 162, 163, 163, 163, 164, - 164, 164, 164, 165, 165, 165, 166, 166, 166, 166, - 167, 168, 169, 170, 171, 171, 171, 171, 171, 171, - 171, 171, 171, 171, 171, 171, 172, 172, 173, 173, - 174, 175, 175, 175, 175, 175, 175, 175, 175, 175, - 175, 175, 175, 175, 176, 176 -}; - -/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -static const short yyr2[] = -{ - 0, 1, 0, 2, 2, 3, 3, 1, 0, 5, - 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 1, 1, 6, 0, 5, 5, 0, - 2, 1, 3, 1, 1, 1, 1, 1, 1, 13, - 0, 3, 3, 3, 2, 3, 3, 2, 2, 2, - 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 10, 12, - 10, 0, 4, 6, 8, 17, 15, 4, 0, 2, - 4, 3, 3, 1, 2, 1, 1, 14, 0, 3, - 3, 3, 2, 2, 3, 3, 2, 2, 2, 0, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 10, 19, 16, - 14, 12, 0, 1, 0, 2, 9, 0, 2, 4, - 3, 0, 6, 3, 5, 0, 3, 3, 3, 3, - 3, 3, 4, 3, 0, 4, 3, 5, 0, 2, - 5, 6, 0, 2, 4, 6, 8, 4, 3, 0, - 4, 0, 1, 6, 0, 9, 9, 3, 3, 3, - 3, 3, 0, 2, 5, 0, 2, 1, 4, 4, - 1, 3, 9, 0, 3, 2, 0, 2, 2, 1, - 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, - 4, 2, 2, 4, 1, 1, 2, 1, 2, 1, - 3, 3, 4, 3, 4, 3, 1, 1, 0, 1, - 1, 3, 3, 3, 3, 3, 3, 3, 2, 2, - 2, 3, 1, 2, 1, 1 -}; - -/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE - doesn't specify something else to do. Zero means the default is an - error. */ -static const short yydefact[] = -{ - 2, 1, 4, 254, 255, 10, 206, 8, 0, 0, - 0, 0, 0, 3, 7, 0, 10, 240, 252, 0, - 216, 0, 250, 249, 248, 253, 0, 179, 0, 0, - 0, 0, 0, 0, 0, 0, 43, 44, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 6, 16, 17, 23, 21, 22, 26, - 27, 20, 29, 206, 15, 18, 19, 24, 25, 30, - 28, 212, 215, 211, 213, 209, 214, 210, 207, 208, - 178, 0, 251, 0, 5, 243, 247, 244, 241, 242, - 245, 246, 216, 216, 216, 0, 0, 216, 216, 216, - 216, 184, 216, 216, 216, 0, 216, 216, 0, 0, - 0, 217, 218, 219, 0, 177, 181, 0, 33, 32, - 31, 236, 0, 237, 34, 35, 0, 0, 0, 0, - 39, 40, 0, 37, 38, 36, 0, 41, 42, 221, - 222, 0, 9, 182, 0, 46, 0, 0, 0, 151, - 149, 164, 162, 0, 0, 0, 0, 0, 0, 0, - 192, 0, 0, 180, 0, 225, 227, 229, 224, 0, - 181, 0, 0, 0, 0, 0, 0, 188, 189, 190, - 187, 191, 0, 216, 220, 0, 45, 0, 226, 228, - 223, 0, 0, 0, 0, 0, 150, 0, 0, 163, - 0, 0, 0, 183, 193, 0, 0, 0, 231, 233, - 235, 230, 0, 0, 0, 181, 153, 181, 168, 166, - 172, 0, 0, 0, 203, 49, 49, 232, 234, 0, - 0, 0, 0, 0, 238, 165, 238, 0, 0, 0, - 195, 0, 0, 47, 48, 60, 144, 181, 154, 181, - 181, 181, 181, 181, 181, 0, 169, 0, 173, 167, - 0, 0, 0, 205, 0, 202, 55, 54, 56, 57, - 58, 53, 50, 51, 0, 0, 108, 152, 157, 156, - 159, 160, 161, 158, 238, 238, 0, 0, 0, 194, - 197, 196, 204, 0, 0, 0, 0, 0, 0, 0, - 70, 64, 67, 68, 69, 145, 0, 181, 239, 0, - 174, 185, 186, 0, 52, 12, 66, 11, 0, 14, - 13, 65, 63, 0, 0, 62, 103, 61, 0, 0, - 0, 0, 0, 0, 0, 119, 112, 113, 116, 117, - 118, 182, 170, 238, 0, 0, 104, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 59, 115, 0, - 114, 111, 110, 109, 0, 171, 0, 175, 198, 199, - 200, 97, 102, 101, 181, 181, 81, 83, 84, 76, - 77, 79, 80, 82, 78, 74, 0, 73, 75, 181, - 71, 72, 87, 86, 85, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 107, 0, 0, 0, 0, 0, - 0, 97, 181, 181, 130, 132, 133, 125, 126, 128, - 129, 131, 127, 123, 0, 122, 124, 181, 120, 121, - 136, 135, 134, 176, 201, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 106, 0, 105, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 147, 0, - 0, 0, 0, 91, 0, 0, 0, 0, 146, 0, - 0, 0, 0, 0, 88, 0, 0, 0, 148, 91, - 0, 0, 0, 0, 0, 98, 0, 137, 0, 0, - 0, 0, 0, 0, 90, 0, 0, 98, 0, 92, - 98, 99, 0, 0, 144, 0, 0, 89, 0, 0, - 98, 142, 0, 93, 100, 0, 144, 141, 143, 0, - 0, 0, 142, 0, 94, 96, 140, 0, 0, 142, - 95, 0, 139, 144, 142, 138, 0, 0, 0 -}; - -static const short yydefgoto[] = -{ - 566, 1, 13, 21, 19, 320, 321, 53, 121, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 164, 243, 272, 273, 65, 274, 328, 386, 395, 504, - 400, 301, 524, 325, 477, 66, 306, 374, 448, 434, - 443, 547, 276, 337, 498, 67, 150, 173, 232, 68, - 152, 174, 235, 237, 14, 15, 83, 233, 69, 132, - 182, 204, 262, 291, 379, 70, 241, 20, 78, 79, - 122, 111, 112, 113, 123, 170, 124, 255, 317, 17, - 18 -}; - -static const short yypact[] = -{ - -32768, 6,-32768,-32768,-32768,-32768,-32768,-32768, 107, 107, - 107, 86, 107,-32768,-32768, -39,-32768, 566,-32768, 285, - 605, 107,-32768,-32768,-32768,-32768, 553,-32768, 285, 107, - 107, 107, 107, 107, 107, 107,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - 258, -31,-32768, 54,-32768, 579, 368, 334, 28, 28, - -32768,-32768, 605, 328, 328, 32, 32, 605, 605, 328, - 328, 605, 328, 328, 328, 32, 328, 328, 107, 107, - 107,-32768,-32768,-32768, 107,-32768, 10, 0,-32768,-32768, - -32768,-32768, 110,-32768,-32768,-32768, 69, 72, 123, 180, - -32768,-32768, 549,-32768,-32768,-32768, 78,-32768,-32768,-32768, - -32768, 85,-32768,-32768, 108,-32768, 62, 107, 107,-32768, - -32768,-32768,-32768, 107, 107, 107, 107, 107, 107, 107, - -32768, 107, 107,-32768, 34,-32768,-32768,-32768,-32768, 264, - -62, 102, 114, 206, 420, 125, 141,-32768,-32768,-32768, - -32768,-32768, -27,-32768,-32768, 143,-32768, 149,-32768,-32768, - -32768, 204, 107, 107, -4, 130,-32768, -2, 210,-32768, - 107, 107, 221,-32768,-32768, 191, 107, 107,-32768,-32768, - -32768,-32768, 274, 153, 157, 10,-32768, -59, 189,-32768, - 195, 200, 212, -5,-32768, 223, 223,-32768,-32768, 107, - 107, 107, 47, 341, 107,-32768, 107, 184, 107, 107, - -32768, 446, 497,-32768,-32768,-32768, 224, 57,-32768, 435, - 435, 435, 435, 435, 435, 232, 233, 237, 233,-32768, - 239, 244, -36,-32768, 107,-32768,-32768,-32768,-32768,-32768, - -32768,-32768, 248,-32768, 251, 107,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768, 107, 107, 107, 107, 267,-32768, - -32768,-32768,-32768, 497, 94, 107, 43, 342, 11, 11, - -32768,-32768,-32768,-32768,-32768,-32768, 312, 275,-32768, 254, - 233,-32768,-32768, 259,-32768,-32768,-32768,-32768, 260,-32768, - -32768,-32768,-32768, 86, 11, 278,-32768, 278, 370, 94, - 107, 43, 351, 11, 11,-32768,-32768,-32768,-32768,-32768, - -32768, 107,-32768, 107, 162, 358,-32768, -18, 11, 43, - 359, 359, 359, 359, 359, 359, 359, 359, 359, 107, - 107, 107, 43, 107, 359, 359, 359,-32768,-32768, 273, - -32768,-32768, 278, 278, 407,-32768, 284, 233,-32768, 293, - -32768,-32768,-32768,-32768, 10, 10,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768, 294,-32768,-32768, 10, - -32768,-32768,-32768,-32768,-32768, 372, 43, 385, 385, 385, - 385, 385, 385, 385, 385, 385, 107, 107, 107, 43, - 107, 385, 385, 385,-32768, 107, 107, 107, 107, 107, - 107, 318, 10, 10,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768, 319,-32768,-32768, 10,-32768,-32768, - -32768,-32768,-32768,-32768,-32768, 374, 375, 383, 384, 107, - 107, 107, 107, 107, 107, 107, 107, 171, 393, 396, - 399, 400, 404, 410, 418, 419,-32768, 421,-32768, 107, - 107, 107, 107, 171, 107, 107, 107, 11, 433, 436, - 437, 438, 442, 443, 444, 452, 96, 107,-32768, 107, - 107, 107, 11, 107,-32768, 107, 107, 107,-32768, 443, - 453, 456, 119, 460, 462, 465, 475,-32768, 107, 107, - 107, 107, 107, 11,-32768, 107, 476, 465, 477, 479, - 465, 121, 483, 107, 224, 107, 11,-32768, 11, 107, - 465, 427, 484, 132, 278, 485, 224,-32768,-32768, 107, - 11, 107, 427, 487, 278, 488,-32768, 107, 11, 79, - 278, 11,-32768, 148, 427,-32768, 513, 539,-32768 -}; - -static const short yypgoto[] = -{ - -32768,-32768,-32768,-32768, 590, -276, -180, 581,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -32768, 381,-32768, 317,-32768,-32768,-32768, 209, -333, 112, - -32768, 320, -505, -291, 140,-32768,-32768,-32768,-32768, 190, - 134, -483, -517,-32768,-32768,-32768, 392,-32768, -30,-32768, - 388,-32768,-32768,-32768,-32768,-32768,-32768, -109,-32768,-32768, - -32768, 371,-32768,-32768,-32768,-32768,-32768, 545,-32768,-32768, - -19, -262, -251, -250, -213,-32768, 528, -233, -1, 440, - 21 -}; - - -#define YYLAST 668 - - -static const short yytable[] = -{ - 16, 80, 215, 257, 218, 202, 288, 144, 327, 2, - 3, 4, 302, 5, 202, 3, 4, 541, 316, 190, - 81, -155, 534, 303, 304, 537, 6, 397, 398, 552, - 401, 143, 25, 347, 143, 546, 3, 4, 3, 4, - 185, 27, 372, 373, 338, 289, 564, 3, 4, 319, - 315, 307, 309, 368, 203, 339, 340, 383, 3, 4, - 108, 191, 114, 109, 110, 348, 165, 166, 167, 556, - 7, 168, 216, 117, 219, 240, 562, 382, 128, 129, - 145, 565, 116, 71, 72, 73, 74, 75, 76, 77, - 3, 4, 8, 9, 126, 127, 10, 11, 3, 4, - 12, 315, 323, 143, 136, 324, 231, 139, 140, 141, - 376, 3, 4, 142, 163, 186, 34, 35, 8, 9, - 8, 9, 10, 11, 10, 11, 12, 149, 12, 8, - 9, -155, -155, 10, 11, 115, 217, 12, -155, -216, - 8, 9, -216, -216, 10, 11, 171, 172, 12, 169, - 143, 370, 175, 176, 177, 178, 179, 180, 181, -216, - 183, 184, 147, 187, 205, 148, 3, 4, 378, 384, - 108, 161, 561, 109, 110, 3, 4, 476, 162, 348, - 8, 9, 399, 108, 10, 11, 109, 110, 12, 507, - 146, 213, 214, 8, 9, 192, 496, 10, 11, 221, - 222, 12, 348, 149, 348, 225, 226, 193, 208, 209, - 210, 512, 520, 211, 538, 348, 220, 277, 200, 278, - 279, 280, 281, 282, 283, 550, 432, 223, 245, 246, - 247, 348, 531, 256, 201, 258, 206, 260, 261, 447, - 108, 275, 207, 109, 110, 543, 229, 544, 8, 9, - 230, 108, 10, 11, 109, 110, 12, 8, 9, 554, - 151, 10, 11, 292, 151, 12, 294, 560, 188, 189, - 563, 224, 295, 313, 305, 427, 428, 342, 227, 228, - 194, 195, 234, 308, 310, 311, 312, 196, 236, 36, - 430, 212, 37, 238, 318, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 239, 48, 49, 50, 296, - 297, 108, 298, 299, 109, 110, 242, 275, 108, 326, - 326, 109, 110, 460, 461, 284, -239, 329, 548, 369, - 285, 300, 286, 330, 118, 119, 120, 287, 463, 548, - 375, 293, 377, 380, 346, 326, 548, 343, 322, -155, - -155, 548, 344, 345, 326, 326, -155, 371, 396, 396, - 396, 348, 396, 51, 381, 385, 405, 52, 341, 326, - 331, 332, 108, 333, 334, 109, 110, 425, 431, 71, - 72, 73, 74, 75, 76, 77, 426, 429, 249, 250, - 251, 433, 335, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, - 366, 459, 462, 252, 253, 444, 444, 444, 254, 444, - 32, 33, 34, 35, 453, 454, 455, 456, 457, 458, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 421, 422, 423, 22, 23, - 24, 367, 26, 31, 32, 33, 34, 35, 468, 469, - 470, 471, 472, 473, 474, 475, 478, 464, 465, 85, - 86, 87, 88, 89, 90, 91, 466, 467, 488, 489, - 490, 491, 478, 493, 494, 495, 479, -216, 424, 480, - -216, -216, 481, 482, 197, 198, 508, 483, 509, 510, - 511, 199, 513, 484, 514, 515, 516, -216, 326, -155, - -155, 485, 486, 567, 487, -155, -155, 526, 527, 528, - 529, 530, 263, 326, 532, 264, 497, 265, 143, 499, - 500, 501, 540, 266, 542, 502, 503, 505, 545, 568, - 267, 268, 269, 270, 326, 506, 518, 271, 553, 519, - 555, 445, 446, 521, 449, 522, 559, 326, 523, 326, - 387, 388, 389, 390, 391, 392, 393, 394, 525, 533, - 535, 326, 536, 402, 403, 404, 539, 549, 551, 326, - 557, 558, 326, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 103, 104, 105, 106, 435, 436, - 437, 438, 439, 440, 441, 442, 28, 244, 107, 84, - 314, 450, 451, 452, 153, 154, 155, 156, 157, 158, - 159, 517, 125, 492, 248, 259, 336, 130, 131, 160, - 133, 134, 135, 290, 137, 138, 29, 30, 31, 32, - 33, 34, 35, 0, 0, 0, 0, 0, 82, 29, - 30, 31, 32, 33, 34, 35, 71, 72, 73, 74, - 75, 76, 77, 30, 31, 32, 33, 34, 35 -}; - -static const short yycheck[] = -{ - 1, 20, 6, 236, 6, 41, 42, 116, 299, 3, - 4, 5, 274, 7, 41, 4, 5, 534, 294, 81, - 21, 80, 527, 274, 274, 530, 20, 360, 361, 546, - 363, 93, 11, 324, 93, 540, 4, 5, 4, 5, - 6, 80, 333, 334, 306, 81, 563, 4, 5, 6, - 7, 284, 285, 329, 81, 306, 306, 348, 4, 5, - 60, 170, 93, 63, 64, 83, 4, 5, 6, 552, - 64, 9, 76, 92, 76, 80, 559, 95, 97, 98, - 80, 564, 83, 51, 52, 53, 54, 55, 56, 57, - 4, 5, 86, 87, 95, 96, 90, 91, 4, 5, - 94, 7, 91, 93, 105, 94, 215, 108, 109, 110, - 343, 4, 5, 114, 6, 81, 88, 89, 86, 87, - 86, 87, 90, 91, 90, 91, 94, 80, 94, 86, - 87, 74, 75, 90, 91, 81, 6, 94, 81, 60, - 86, 87, 63, 64, 90, 91, 147, 148, 94, 87, - 93, 331, 153, 154, 155, 156, 157, 158, 159, 80, - 161, 162, 93, 164, 183, 93, 4, 5, 6, 349, - 60, 93, 93, 63, 64, 4, 5, 6, 93, 83, - 86, 87, 362, 60, 90, 91, 63, 64, 94, 93, - 80, 192, 193, 86, 87, 93, 487, 90, 91, 200, - 201, 94, 83, 80, 83, 206, 207, 93, 4, 5, - 6, 502, 93, 9, 93, 83, 6, 247, 93, 249, - 250, 251, 252, 253, 254, 93, 406, 6, 229, 230, - 231, 83, 523, 234, 93, 236, 93, 238, 239, 419, - 60, 93, 93, 63, 64, 536, 93, 538, 86, 87, - 93, 60, 90, 91, 63, 64, 94, 86, 87, 550, - 80, 90, 91, 264, 80, 94, 15, 558, 4, 5, - 561, 80, 21, 6, 275, 384, 385, 307, 4, 5, - 74, 75, 93, 284, 285, 286, 287, 81, 93, 4, - 399, 87, 7, 93, 295, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 93, 21, 22, 23, 58, - 59, 60, 61, 62, 63, 64, 93, 93, 60, 298, - 299, 63, 64, 432, 433, 93, 93, 15, 541, 330, - 93, 80, 93, 21, 6, 7, 8, 93, 447, 552, - 341, 93, 343, 344, 323, 324, 559, 93, 6, 74, - 75, 564, 93, 93, 333, 334, 81, 6, 359, 360, - 361, 83, 363, 78, 6, 6, 93, 82, 93, 348, - 58, 59, 60, 61, 62, 63, 64, 93, 6, 51, - 52, 53, 54, 55, 56, 57, 93, 93, 47, 48, - 49, 6, 80, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 93, 93, 72, 73, 416, 417, 418, 77, 420, - 86, 87, 88, 89, 425, 426, 427, 428, 429, 430, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 8, 9, - 10, 81, 12, 85, 86, 87, 88, 89, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 93, 93, 29, - 30, 31, 32, 33, 34, 35, 93, 93, 479, 480, - 481, 482, 483, 484, 485, 486, 93, 60, 81, 93, - 63, 64, 93, 93, 74, 75, 497, 93, 499, 500, - 501, 81, 503, 93, 505, 506, 507, 80, 487, 74, - 75, 93, 93, 0, 93, 80, 81, 518, 519, 520, - 521, 522, 76, 502, 525, 79, 93, 81, 93, 93, - 93, 93, 533, 36, 535, 93, 93, 93, 539, 0, - 43, 44, 45, 46, 523, 93, 93, 50, 549, 93, - 551, 417, 418, 93, 420, 93, 557, 536, 93, 538, - 351, 352, 353, 354, 355, 356, 357, 358, 93, 93, - 93, 550, 93, 364, 365, 366, 93, 93, 93, 558, - 93, 93, 561, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 408, 409, - 410, 411, 412, 413, 414, 415, 16, 226, 63, 28, - 293, 421, 422, 423, 65, 66, 67, 68, 69, 70, - 71, 509, 94, 483, 232, 237, 306, 99, 100, 80, - 102, 103, 104, 262, 106, 107, 83, 84, 85, 86, - 87, 88, 89, -1, -1, -1, -1, -1, 95, 83, - 84, 85, 86, 87, 88, 89, 51, 52, 53, 54, - 55, 56, 57, 84, 85, 86, 87, 88, 89 -}; -/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/share/bison/bison.simple" - -/* Skeleton output parser for bison, - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ - -/* This is the parser code that is written into each bison parser when - the %semantic_parser declaration is not specified in the grammar. - It was written by Richard Stallman by simplifying the hairy parser - used when %semantic_parser is specified. */ - -/* All symbols defined below should begin with yy or YY, to avoid - infringing on user name space. This should be done even for local - variables, as they might otherwise be expanded by user macros. - There are some unavoidable exceptions within include files to - define necessary library symbols; they are noted "INFRINGES ON - USER NAME SPACE" below. */ - -#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE) +#if ! defined (yyoverflow) || YYERROR_VERBOSE /* The parser invokes alloca or malloc; define the necessary symbols. */ @@ -1062,37 +566,28 @@ static const short yycheck[] = # define YYSTACK_ALLOC malloc # define YYSTACK_FREE free # endif -#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ +#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ #if (! defined (yyoverflow) \ && (! defined (__cplusplus) \ - || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) + || (YYSTYPE_IS_TRIVIAL))) /* A type that is properly aligned for any stack member. */ union yyalloc { short yyss; YYSTYPE yyvs; -# if YYLSP_NEEDED - YYLTYPE yyls; -# endif -}; + }; /* The size of the maximum gap between one aligned stack and the next. */ -# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1) +# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) /* The size of an array large to enough to hold all stacks, each with N elements. */ -# if YYLSP_NEEDED -# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ - + 2 * YYSTACK_GAP_MAX) -# else -# define YYSTACK_BYTES(N) \ +# define YYSTACK_BYTES(N) \ ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ - + YYSTACK_GAP_MAX) -# endif + + YYSTACK_GAP_MAXIMUM) /* Copy COUNT objects from FROM to TO. The source and destination do not overlap. */ @@ -1123,13 +618,734 @@ union yyalloc YYSIZE_T yynewbytes; \ YYCOPY (&yyptr->Stack, Stack, yysize); \ Stack = &yyptr->Stack; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \ + yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ while (0) #endif +#if defined (__STDC__) || defined (__cplusplus) + typedef signed char yysigned_char; +#else + typedef short yysigned_char; +#endif + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 3 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 669 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 96 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 82 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 256 +/* YYNRULES -- Number of states. */ +#define YYNSTATES 570 + +/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ +#define YYUNDEFTOK 2 +#define YYMAXUTOK 339 + +#define YYTRANSLATE(YYX) \ + ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) + +/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ +static const unsigned char yytranslate[] = +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 85, 2, + 94, 95, 88, 86, 93, 87, 2, 89, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 84, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 83, 2, 90, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 91, 92 +}; + +#if YYDEBUG +/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in + YYRHS. */ +static const unsigned short yyprhs[] = +{ + 0, 0, 3, 5, 6, 9, 12, 16, 20, 22, + 23, 29, 30, 32, 34, 36, 38, 40, 42, 44, + 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, + 66, 68, 70, 72, 74, 76, 80, 84, 88, 92, + 96, 100, 104, 108, 112, 114, 116, 123, 124, 130, + 136, 137, 140, 142, 146, 148, 150, 152, 154, 156, + 158, 172, 173, 177, 181, 185, 188, 192, 196, 199, + 202, 205, 206, 210, 214, 218, 222, 226, 230, 234, + 238, 242, 246, 250, 254, 258, 262, 266, 270, 274, + 285, 298, 309, 310, 315, 322, 331, 349, 365, 370, + 371, 374, 379, 383, 387, 389, 392, 394, 396, 411, + 412, 416, 420, 424, 427, 430, 434, 438, 441, 444, + 447, 448, 452, 456, 460, 464, 468, 472, 476, 480, + 484, 488, 492, 496, 500, 504, 508, 512, 516, 527, + 547, 564, 579, 592, 593, 595, 596, 599, 609, 610, + 613, 618, 622, 623, 630, 634, 640, 641, 645, 649, + 653, 657, 661, 665, 670, 674, 675, 680, 684, 690, + 691, 694, 700, 707, 708, 711, 716, 723, 732, 737, + 741, 742, 747, 748, 750, 757, 758, 768, 778, 782, + 786, 790, 794, 798, 799, 802, 808, 809, 812, 814, + 819, 824, 826, 830, 840, 841, 845, 848, 849, 852, + 855, 857, 859, 861, 863, 865, 867, 869, 870, 873, + 876, 879, 884, 887, 890, 895, 897, 899, 902, 904, + 907, 909, 913, 917, 922, 926, 931, 935, 937, 939, + 940, 942, 944, 948, 952, 956, 960, 964, 968, 972, + 975, 978, 981, 985, 987, 990, 992 +}; + +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const short yyrhs[] = +{ + 97, 0, -1, 98, -1, -1, 98, 99, -1, 98, + 3, -1, 175, 101, 104, -1, 7, 101, 104, -1, + 151, -1, -1, 64, 100, 175, 93, 175, -1, -1, + 175, -1, 7, -1, 102, -1, 6, -1, 116, -1, + 106, -1, 107, -1, 121, -1, 132, -1, 113, -1, + 109, -1, 110, -1, 108, -1, 142, -1, 146, -1, + 111, -1, 112, -1, 162, -1, 114, -1, 155, -1, + 8, -1, 7, -1, 6, -1, 11, 164, 173, -1, + 12, 164, 173, -1, 23, 164, 173, -1, 21, 164, + 173, -1, 22, 164, 173, -1, 17, 164, 173, -1, + 18, 164, 173, -1, 82, 164, 173, -1, 115, 164, + 173, -1, 4, -1, 7, -1, 10, 164, 167, 80, + 117, 81, -1, -1, 117, 6, 93, 175, 118, -1, + 117, 175, 93, 175, 118, -1, -1, 93, 119, -1, + 120, -1, 119, 93, 120, -1, 50, -1, 43, -1, + 36, -1, 44, -1, 45, -1, 46, -1, 13, 164, + 175, 93, 175, 93, 175, 93, 175, 122, 80, 123, + 81, -1, -1, 122, 62, 130, -1, 122, 61, 130, + -1, 122, 59, 6, -1, 122, 128, -1, 122, 58, + 103, -1, 122, 15, 102, -1, 122, 168, -1, 122, + 169, -1, 122, 170, -1, -1, 123, 36, 127, -1, + 123, 37, 125, -1, 123, 34, 125, -1, 123, 33, + 125, -1, 123, 35, 125, -1, 123, 27, 124, -1, + 123, 28, 124, -1, 123, 32, 124, -1, 123, 29, + 124, -1, 123, 30, 124, -1, 123, 24, 124, -1, + 123, 31, 124, -1, 123, 25, 124, -1, 123, 26, + 124, -1, 123, 40, 124, -1, 123, 39, 124, -1, + 123, 38, 124, -1, 123, 23, 103, 154, 175, 93, + 175, 93, 175, 126, -1, 6, 154, 175, 93, 175, + 93, 175, 93, 175, 93, 175, 129, -1, 175, 93, + 175, 93, 175, 93, 175, 93, 175, 129, -1, -1, + 93, 175, 93, 175, -1, 93, 175, 93, 175, 93, + 130, -1, 93, 175, 93, 175, 93, 130, 93, 130, + -1, 103, 154, 175, 93, 131, 93, 130, 93, 175, + 93, 175, 93, 175, 93, 175, 93, 130, -1, 103, + 154, 175, 93, 131, 93, 130, 93, 175, 93, 175, + 93, 175, 93, 175, -1, 21, 175, 93, 6, -1, + -1, 93, 130, -1, 93, 130, 93, 130, -1, 130, + 83, 130, -1, 94, 130, 95, -1, 176, -1, 91, + 176, -1, 175, -1, 6, -1, 14, 164, 175, 93, + 175, 93, 175, 93, 175, 139, 133, 80, 134, 81, + -1, -1, 133, 62, 130, -1, 133, 61, 130, -1, + 133, 59, 6, -1, 133, 128, -1, 133, 140, -1, + 133, 58, 103, -1, 133, 15, 102, -1, 133, 168, + -1, 133, 169, -1, 133, 170, -1, -1, 134, 36, + 135, -1, 134, 37, 137, -1, 134, 34, 137, -1, + 134, 33, 137, -1, 134, 35, 137, -1, 134, 27, + 136, -1, 134, 28, 136, -1, 134, 32, 136, -1, + 134, 29, 136, -1, 134, 30, 136, -1, 134, 24, + 136, -1, 134, 31, 136, -1, 134, 25, 136, -1, + 134, 26, 136, -1, 134, 40, 136, -1, 134, 39, + 136, -1, 134, 38, 136, -1, 134, 23, 103, 154, + 175, 93, 175, 93, 175, 126, -1, 103, 154, 175, + 93, 131, 93, 130, 93, 175, 93, 175, 93, 175, + 93, 175, 93, 130, 139, 138, -1, 103, 154, 175, + 93, 131, 93, 130, 93, 175, 93, 175, 93, 175, + 93, 175, 138, -1, 6, 154, 175, 93, 175, 93, + 175, 93, 175, 93, 175, 129, 139, 138, -1, 175, + 93, 175, 93, 175, 93, 175, 93, 175, 129, 139, + 138, -1, -1, 171, -1, -1, 93, 175, -1, 21, + 175, 93, 6, 93, 175, 93, 175, 141, -1, -1, + 93, 175, -1, 15, 164, 167, 143, -1, 80, 144, + 81, -1, -1, 144, 74, 6, 154, 175, 145, -1, + 144, 74, 76, -1, 144, 75, 6, 145, 143, -1, + -1, 154, 48, 145, -1, 154, 47, 145, -1, 154, + 77, 145, -1, 154, 49, 145, -1, 154, 72, 145, + -1, 154, 73, 145, -1, 16, 164, 167, 147, -1, + 80, 148, 81, -1, -1, 148, 74, 6, 149, -1, + 148, 74, 76, -1, 148, 75, 6, 150, 147, -1, + -1, 93, 175, -1, 93, 174, 93, 174, 145, -1, + 93, 174, 93, 174, 93, 175, -1, -1, 93, 175, + -1, 93, 174, 93, 175, -1, 93, 174, 93, 174, + 93, 175, -1, 93, 174, 93, 174, 93, 174, 93, + 175, -1, 152, 80, 153, 81, -1, 20, 164, 167, + -1, -1, 153, 175, 154, 6, -1, -1, 93, -1, + 19, 164, 156, 80, 157, 81, -1, -1, 156, 65, + 175, 93, 175, 93, 175, 93, 175, -1, 156, 66, + 175, 93, 175, 93, 175, 93, 175, -1, 156, 70, + 175, -1, 156, 67, 175, -1, 156, 68, 175, -1, + 156, 69, 175, -1, 156, 71, 175, -1, -1, 157, + 158, -1, 41, 6, 80, 159, 81, -1, -1, 159, + 160, -1, 158, -1, 42, 6, 93, 6, -1, 42, + 6, 93, 161, -1, 175, -1, 161, 93, 175, -1, + 78, 164, 175, 93, 175, 167, 80, 163, 81, -1, + -1, 163, 79, 175, -1, 163, 76, -1, -1, 164, + 165, -1, 164, 166, -1, 55, -1, 57, -1, 53, + -1, 51, -1, 54, -1, 56, -1, 52, -1, -1, + 167, 168, -1, 167, 169, -1, 167, 170, -1, 64, + 175, 93, 175, -1, 60, 175, -1, 63, 175, -1, + 167, 80, 172, 81, -1, 9, -1, 4, -1, 87, + 4, -1, 5, -1, 87, 5, -1, 6, -1, 172, + 154, 9, -1, 172, 154, 4, -1, 172, 154, 87, + 4, -1, 172, 154, 5, -1, 172, 154, 87, 5, + -1, 172, 154, 6, -1, 105, -1, 171, -1, -1, + 175, -1, 176, -1, 176, 86, 176, -1, 176, 87, + 176, -1, 176, 83, 176, -1, 176, 85, 176, -1, + 176, 88, 176, -1, 176, 89, 176, -1, 176, 84, + 176, -1, 90, 176, -1, 87, 176, -1, 86, 176, + -1, 94, 176, 95, -1, 177, -1, 91, 177, -1, + 4, -1, 5, -1 +}; + +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const unsigned short yyrline[] = +{ + 0, 361, 361, 395, 396, 466, 472, 484, 494, 502, + 502, 546, 552, 559, 569, 570, 579, 580, 581, 605, + 606, 612, 613, 614, 615, 639, 640, 646, 647, 648, + 649, 650, 654, 655, 656, 660, 664, 680, 702, 712, + 720, 728, 732, 736, 747, 752, 761, 785, 786, 787, + 796, 797, 800, 801, 804, 805, 806, 807, 808, 809, + 814, 849, 850, 851, 852, 853, 854, 855, 856, 857, + 858, 861, 862, 863, 864, 865, 866, 867, 868, 869, + 870, 872, 873, 874, 875, 876, 877, 878, 879, 881, + 891, 916, 938, 940, 945, 952, 963, 977, 992, 997, + 998, 999, 1003, 1004, 1005, 1006, 1010, 1015, 1023, 1067, + 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, + 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, + 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1100, 1110, + 1135, 1151, 1179, 1202, 1203, 1206, 1207, 1211, 1218, 1219, + 1223, 1246, 1250, 1251, 1260, 1266, 1285, 1286, 1287, 1288, + 1289, 1290, 1291, 1295, 1320, 1324, 1325, 1341, 1347, 1367, + 1368, 1372, 1380, 1391, 1392, 1396, 1402, 1410, 1430, 1471, + 1482, 1483, 1516, 1518, 1523, 1539, 1540, 1550, 1560, 1567, + 1574, 1581, 1588, 1598, 1599, 1608, 1616, 1617, 1626, 1631, + 1637, 1646, 1647, 1651, 1677, 1678, 1683, 1692, 1693, 1703, + 1718, 1719, 1720, 1721, 1724, 1725, 1726, 1730, 1731, 1739, + 1747, 1765, 1772, 1776, 1780, 1795, 1796, 1797, 1798, 1799, + 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1810, 1811, 1818, + 1819, 1823, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, + 1834, 1835, 1836, 1837, 1838, 1841, 1842 +}; +#endif + +#if YYDEBUG || YYERROR_VERBOSE +/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + "$end", "error", "$undefined", "tNL", "tNUMBER", "tLNUMBER", "tSTRING", + "tIDENT", "tFILENAME", "tRAWDATA", "tACCELERATORS", "tBITMAP", + "tCURSOR", "tDIALOG", "tDIALOGEX", "tMENU", "tMENUEX", "tMESSAGETABLE", + "tRCDATA", "tVERSIONINFO", "tSTRINGTABLE", "tFONT", "tFONTDIR", "tICON", + "tAUTO3STATE", "tAUTOCHECKBOX", "tAUTORADIOBUTTON", "tCHECKBOX", + "tDEFPUSHBUTTON", "tPUSHBUTTON", "tRADIOBUTTON", "tSTATE3", "tGROUPBOX", + "tCOMBOBOX", "tLISTBOX", "tSCROLLBAR", "tCONTROL", "tEDITTEXT", + "tRTEXT", "tCTEXT", "tLTEXT", "tBLOCK", "tVALUE", "tSHIFT", "tALT", + "tASCII", "tVIRTKEY", "tGRAYED", "tCHECKED", "tINACTIVE", "tNOINVERT", + "tPURE", "tIMPURE", "tDISCARDABLE", "tLOADONCALL", "tPRELOAD", "tFIXED", + "tMOVEABLE", "tCLASS", "tCAPTION", "tCHARACTERISTICS", "tEXSTYLE", + "tSTYLE", "tVERSION", "tLANGUAGE", "tFILEVERSION", "tPRODUCTVERSION", + "tFILEFLAGSMASK", "tFILEOS", "tFILETYPE", "tFILEFLAGS", "tFILESUBTYPE", + "tMENUBARBREAK", "tMENUBREAK", "tMENUITEM", "tPOPUP", "tSEPARATOR", + "tHELP", "tTOOLBAR", "tBUTTON", "tBEGIN", "tEND", "tDLGINIT", "'|'", + "'^'", "'&'", "'+'", "'-'", "'*'", "'/'", "'~'", "tNOT", "pUPM", "','", + "'('", "')'", "$accept", "resource_file", "resources", "resource", "@1", + "usrcvt", "nameid", "nameid_s", "resource_definition", "filename", + "bitmap", "cursor", "icon", "font", "fontdir", "messagetable", "rcdata", + "dlginit", "userres", "usertype", "accelerators", "events", "acc_opt", + "accs", "acc", "dialog", "dlg_attributes", "ctrls", "lab_ctrl", + "ctrl_desc", "iconinfo", "gen_ctrl", "opt_font", "optional_style_pair", + "style", "ctlclass", "dialogex", "dlgex_attribs", "exctrls", + "gen_exctrl", "lab_exctrl", "exctrl_desc", "opt_data", "helpid", + "opt_exfont", "opt_expr", "menu", "menu_body", "item_definitions", + "item_options", "menuex", "menuex_body", "itemex_definitions", + "itemex_options", "itemex_p_options", "stringtable", "stt_head", + "strings", "opt_comma", "versioninfo", "fix_version", "ver_blocks", + "ver_block", "ver_values", "ver_value", "ver_words", "toolbar", + "toolbar_items", "loadmemopts", "lamo", "lama", "opt_lvc", + "opt_language", "opt_characts", "opt_version", "raw_data", + "raw_elements", "file_raw", "e_expr", "expr", "xpr", "any_num", 0 +}; +#endif + +# ifdef YYPRINT +/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to + token YYLEX-NUM. */ +static const unsigned short yytoknum[] = +{ + 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 124, 94, 38, 43, 45, 42, 47, + 126, 338, 339, 44, 40, 41 +}; +# endif + +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const unsigned char yyr1[] = +{ + 0, 96, 97, 98, 98, 98, 99, 99, 99, 100, + 99, 101, 102, 102, 103, 103, 104, 104, 104, 104, + 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, + 104, 104, 105, 105, 105, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 115, 116, 117, 117, 117, + 118, 118, 119, 119, 120, 120, 120, 120, 120, 120, + 121, 122, 122, 122, 122, 122, 122, 122, 122, 122, + 122, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 124, 125, 126, 126, 126, 126, 127, 127, 128, 129, + 129, 129, 130, 130, 130, 130, 131, 131, 132, 133, + 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, + 134, 134, 134, 134, 134, 134, 134, 134, 134, 134, + 134, 134, 134, 134, 134, 134, 134, 134, 134, 135, + 135, 136, 137, 138, 138, 139, 139, 140, 141, 141, + 142, 143, 144, 144, 144, 144, 145, 145, 145, 145, + 145, 145, 145, 146, 147, 148, 148, 148, 148, 149, + 149, 149, 149, 150, 150, 150, 150, 150, 151, 152, + 153, 153, 154, 154, 155, 156, 156, 156, 156, 156, + 156, 156, 156, 157, 157, 158, 159, 159, 160, 160, + 160, 161, 161, 162, 163, 163, 163, 164, 164, 164, + 165, 165, 165, 165, 166, 166, 166, 167, 167, 167, + 167, 168, 169, 170, 171, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 173, 173, 174, + 174, 175, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 176, 176, 176, 177, 177 +}; + +/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ +static const unsigned char yyr2[] = +{ + 0, 2, 1, 0, 2, 2, 3, 3, 1, 0, + 5, 0, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 1, 1, 6, 0, 5, 5, + 0, 2, 1, 3, 1, 1, 1, 1, 1, 1, + 13, 0, 3, 3, 3, 2, 3, 3, 2, 2, + 2, 0, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 10, + 12, 10, 0, 4, 6, 8, 17, 15, 4, 0, + 2, 4, 3, 3, 1, 2, 1, 1, 14, 0, + 3, 3, 3, 2, 2, 3, 3, 2, 2, 2, + 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 10, 19, + 16, 14, 12, 0, 1, 0, 2, 9, 0, 2, + 4, 3, 0, 6, 3, 5, 0, 3, 3, 3, + 3, 3, 3, 4, 3, 0, 4, 3, 5, 0, + 2, 5, 6, 0, 2, 4, 6, 8, 4, 3, + 0, 4, 0, 1, 6, 0, 9, 9, 3, 3, + 3, 3, 3, 0, 2, 5, 0, 2, 1, 4, + 4, 1, 3, 9, 0, 3, 2, 0, 2, 2, + 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, + 2, 4, 2, 2, 4, 1, 1, 2, 1, 2, + 1, 3, 3, 4, 3, 4, 3, 1, 1, 0, + 1, 1, 3, 3, 3, 3, 3, 3, 3, 2, + 2, 2, 3, 1, 2, 1, 1 +}; + +/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state + STATE-NUM when YYTABLE doesn't specify something else to do. Zero + means the default is an error. */ +static const unsigned short yydefact[] = +{ + 3, 0, 2, 1, 5, 255, 256, 11, 207, 9, + 0, 0, 0, 0, 0, 4, 8, 0, 11, 241, + 253, 0, 217, 0, 251, 250, 249, 254, 0, 180, + 0, 0, 0, 0, 0, 0, 0, 0, 44, 45, + 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, + 207, 207, 207, 207, 207, 7, 17, 18, 24, 22, + 23, 27, 28, 21, 30, 207, 16, 19, 20, 25, + 26, 31, 29, 213, 216, 212, 214, 210, 215, 211, + 208, 209, 179, 0, 252, 0, 6, 244, 248, 245, + 242, 243, 246, 247, 217, 217, 217, 0, 0, 217, + 217, 217, 217, 185, 217, 217, 217, 0, 217, 217, + 0, 0, 0, 218, 219, 220, 0, 178, 182, 0, + 34, 33, 32, 237, 0, 238, 35, 36, 0, 0, + 0, 0, 40, 41, 0, 38, 39, 37, 0, 42, + 43, 222, 223, 0, 10, 183, 0, 47, 0, 0, + 0, 152, 150, 165, 163, 0, 0, 0, 0, 0, + 0, 0, 193, 0, 0, 181, 0, 226, 228, 230, + 225, 0, 182, 0, 0, 0, 0, 0, 0, 189, + 190, 191, 188, 192, 0, 217, 221, 0, 46, 0, + 227, 229, 224, 0, 0, 0, 0, 0, 151, 0, + 0, 164, 0, 0, 0, 184, 194, 0, 0, 0, + 232, 234, 236, 231, 0, 0, 0, 182, 154, 182, + 169, 167, 173, 0, 0, 0, 204, 50, 50, 233, + 235, 0, 0, 0, 0, 0, 239, 166, 239, 0, + 0, 0, 196, 0, 0, 48, 49, 61, 145, 182, + 155, 182, 182, 182, 182, 182, 182, 0, 170, 0, + 174, 168, 0, 0, 0, 206, 0, 203, 56, 55, + 57, 58, 59, 54, 51, 52, 0, 0, 109, 153, + 158, 157, 160, 161, 162, 159, 239, 239, 0, 0, + 0, 195, 198, 197, 205, 0, 0, 0, 0, 0, + 0, 0, 71, 65, 68, 69, 70, 146, 0, 182, + 240, 0, 175, 186, 187, 0, 53, 13, 67, 12, + 0, 15, 14, 66, 64, 0, 0, 63, 104, 62, + 0, 0, 0, 0, 0, 0, 0, 120, 113, 114, + 117, 118, 119, 183, 171, 239, 0, 0, 105, 253, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 60, 116, 0, 115, 112, 111, 110, 0, 172, + 0, 176, 199, 200, 201, 98, 103, 102, 182, 182, + 82, 84, 85, 77, 78, 80, 81, 83, 79, 75, + 0, 74, 76, 182, 72, 73, 88, 87, 86, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 108, 0, + 0, 0, 0, 0, 0, 98, 182, 182, 131, 133, + 134, 126, 127, 129, 130, 132, 128, 124, 0, 123, + 125, 182, 121, 122, 137, 136, 135, 177, 202, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 107, 0, 106, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 148, 0, 0, 0, 0, 92, 0, 0, + 0, 0, 147, 0, 0, 0, 0, 0, 89, 0, + 0, 0, 149, 92, 0, 0, 0, 0, 0, 99, + 0, 138, 0, 0, 0, 0, 0, 0, 91, 0, + 0, 99, 0, 93, 99, 100, 0, 0, 145, 0, + 0, 90, 0, 0, 99, 143, 0, 94, 101, 0, + 145, 142, 144, 0, 0, 0, 143, 0, 95, 97, + 141, 0, 0, 143, 96, 0, 140, 145, 143, 139 +}; + +/* YYDEFGOTO[NTERM-NUM]. */ +static const short yydefgoto[] = +{ + -1, 1, 2, 15, 23, 21, 322, 323, 55, 123, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 166, 245, 274, 275, 67, 276, 330, 390, 399, + 508, 404, 303, 528, 327, 481, 68, 308, 378, 452, + 438, 447, 551, 278, 339, 502, 69, 152, 175, 234, + 70, 154, 176, 237, 239, 16, 17, 85, 235, 71, + 134, 184, 206, 264, 293, 383, 72, 243, 22, 80, + 81, 124, 113, 114, 115, 125, 172, 126, 257, 319, + 19, 20 +}; + +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +#define YYPACT_NINF -399 +static const short yypact[] = +{ + -399, 11, 13, -399, -399, -399, -399, -399, -399, -399, + 207, 207, 207, 37, 207, -399, -399, -66, -399, 351, + -399, 363, 612, 207, -399, -399, -399, -399, 564, -399, + 363, 207, 207, 207, 207, 207, 207, 207, -399, -399, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + -399, -399, 361, -46, -399, 108, -399, 445, 469, 311, + 49, 49, -399, -399, 612, 282, 282, 33, 33, 612, + 612, 282, 282, 612, 282, 282, 282, 33, 282, 282, + 207, 207, 207, -399, -399, -399, 207, -399, -15, 38, + -399, -399, -399, -399, 182, -399, -399, -399, 1, 28, + 236, 243, -399, -399, 448, -399, -399, -399, 42, -399, + -399, -399, -399, 51, -399, -399, 75, -399, 58, 207, + 207, -399, -399, -399, -399, 207, 207, 207, 207, 207, + 207, 207, -399, 207, 207, -399, 87, -399, -399, -399, + -399, 138, -21, 70, 74, -62, 41, 98, 103, -399, + -399, -399, -399, -399, 30, -399, -399, 115, -399, 117, + -399, -399, -399, 64, 207, 207, -1, 209, -399, 0, + 213, -399, 207, 207, 222, -399, -399, 268, 207, 207, + -399, -399, -399, -399, 167, 123, 142, -15, -399, -57, + 144, -399, 151, 159, 168, 100, -399, 170, 170, -399, + -399, 207, 207, 207, 194, 178, 207, -399, 207, 200, + 207, 207, -399, 60, 500, -399, -399, -399, 190, 276, + -399, 398, 398, 398, 398, 398, 398, 198, 217, 224, + 217, -399, 231, 234, -33, -399, 207, -399, -399, -399, + -399, -399, -399, -399, 249, -399, 332, 207, -399, -399, + -399, -399, -399, -399, -399, -399, 207, 207, 207, 207, + 296, -399, -399, -399, -399, 500, 127, 207, 39, 305, + 228, 228, -399, -399, -399, -399, -399, -399, 343, 419, + -399, 256, 217, -399, -399, 259, -399, -399, -399, -399, + 261, -399, -399, -399, -399, 207, 228, 246, 351, 246, + 563, 127, 207, 39, 354, 228, 228, -399, -399, -399, + -399, -399, -399, 207, -399, 207, 179, 360, 445, -399, + 93, 564, 228, 39, 362, 362, 362, 362, 362, 362, + 362, 362, 362, 207, 207, 207, 39, 207, 362, 362, + 362, -399, -399, 266, -399, -399, 246, 246, 581, -399, + 278, 217, -399, 290, -399, -399, -399, -399, -15, -15, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + 294, -399, -399, -15, -399, -399, -399, -399, -399, 382, + 39, 383, 383, 383, 383, 383, 383, 383, 383, 383, + 207, 207, 207, 39, 207, 383, 383, 383, -399, 207, + 207, 207, 207, 207, 207, 317, -15, -15, -399, -399, + -399, -399, -399, -399, -399, -399, -399, -399, 321, -399, + -399, -15, -399, -399, -399, -399, -399, -399, -399, 322, + 333, 349, 350, 207, 207, 207, 207, 207, 207, 207, + 207, 218, 377, 387, 396, 397, 399, 402, 403, 404, + -399, 405, -399, 207, 207, 207, 207, 218, 207, 207, + 207, 228, 411, 413, 417, 432, 446, 447, 449, 455, + 165, 207, -399, 207, 207, 207, 228, 207, -399, 207, + 207, 207, -399, 447, 456, 459, 166, 468, 478, 479, + 480, -399, 207, 207, 207, 207, 207, 228, -399, 207, + 482, 479, 486, 487, 479, 174, 488, 207, 190, 207, + 228, -399, 228, 207, 479, 353, 490, 188, 246, 491, + 190, -399, -399, 207, 228, 207, 353, 538, 246, 539, + -399, 207, 228, 86, 246, 228, -399, 189, 353, -399 +}; + +/* YYPGOTO[NTERM-NUM]. */ +static const short yypgoto[] = +{ + -399, -399, -399, -399, -399, 426, -292, -163, 508, -399, + -399, -399, -399, -399, -399, -399, -399, -399, -399, -399, + -399, -399, 248, -399, 335, -399, -399, -399, 208, 44, + 121, -399, 346, -291, -286, 153, -399, -399, -399, -399, + 210, 53, -381, -398, -399, -399, -399, 421, -399, -227, + -399, 418, -399, -399, -399, -399, -399, -399, -111, -399, + -399, -399, 392, -399, -399, -399, -399, -399, 406, -399, + -399, -20, -273, -211, -148, -359, -399, 537, -228, -2, + 20, -12 +}; + +/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If zero, do what YYDEFACT says. + If YYTABLE_NINF, syntax error. */ +#define YYTABLE_NINF -241 +static const short yytable[] = +{ + 18, 27, 82, 304, 318, 217, 220, 146, 204, 290, + 259, 3, 196, 197, 29, 329, 4, 5, 6, 198, + 7, 83, 279, -156, 280, 281, 282, 283, 284, 285, + 24, 25, 26, 8, 28, 340, 145, 5, 6, 372, + 350, 5, 6, 5, 6, 321, 317, 116, 291, 376, + 377, 87, 88, 89, 90, 91, 92, 93, 309, 311, + 192, 193, 167, 168, 169, 305, 387, 170, 210, 211, + 212, 204, 145, 213, 119, 218, 221, 9, 145, 130, + 131, 165, 344, 118, 73, 74, 75, 76, 77, 78, + 79, 5, 6, 187, 149, 128, 129, 341, 110, 10, + 11, 111, 112, 12, 13, 138, 233, 14, 141, 142, + 143, 205, 5, 6, 144, 199, 200, 380, 147, 10, + 11, 150, 201, 12, 13, 10, 11, 14, 306, 12, + 13, 5, 6, 14, 317, 163, 265, 36, 37, 266, + 545, 267, 190, 191, 164, 171, -217, 173, 174, -217, + -217, 214, 556, 177, 178, 179, 180, 181, 182, 183, + 342, 185, 186, 194, 189, 207, -217, 195, 188, 568, + 374, 229, 230, 10, 11, 560, 352, 12, 13, 565, + 242, 14, 566, 5, 6, 382, 552, 569, 386, 117, + 388, 202, 215, 216, 10, 11, 203, 552, 12, 13, + 223, 224, 14, 403, 552, 500, 227, 228, 208, 552, + 209, 5, 6, 10, 11, 219, 231, 12, 13, 222, + 516, 14, 5, 6, 480, 251, 252, 253, 225, 247, + 248, 249, 5, 6, 258, 232, 260, 236, 262, 263, + 538, 535, 110, 541, 238, 111, 112, 436, 352, 352, + 254, 255, 240, 550, 547, 256, 548, 352, 511, 524, + 451, 241, 148, 244, 294, 10, 11, 542, 558, 12, + 13, 352, 352, 14, 151, 307, 564, 431, 432, 567, + 153, 554, 277, 277, 310, 312, 313, 314, 120, 121, + 122, 286, 434, 10, 11, 320, 110, 12, 13, 111, + 112, 14, 315, 110, 10, 11, 111, 112, 12, 13, + -240, 324, 14, 349, 10, 11, 151, 287, 12, 325, + 328, 328, 326, 153, 288, 464, 465, 289, 110, 352, + 373, 111, 112, 73, 74, 75, 76, 77, 78, 79, + 467, 379, 295, 381, 384, 348, 351, 296, 226, 345, + -156, -156, 346, 297, 347, 328, 328, -156, 331, 409, + 375, 400, 400, 400, 332, 400, 385, 38, 389, 145, + 39, 429, 328, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 430, 50, 51, 52, 433, 435, 437, + 298, 299, 110, 300, 301, 111, 112, 34, 35, 36, + 37, 333, 334, 110, 335, 336, 111, 112, 401, 402, + 463, 405, 302, -217, 466, 468, -217, -217, 448, 448, + 448, 110, 448, 337, 111, 112, 469, 457, 458, 459, + 460, 461, 462, -217, 31, 32, 33, 34, 35, 36, + 37, 53, 470, 471, 30, 54, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, + 108, 472, 473, 474, 475, 476, 477, 478, 479, 482, + 483, 109, -156, -156, 449, 450, 246, 453, -156, -156, + 484, 492, 493, 494, 495, 482, 497, 498, 499, 485, + 486, 145, 487, -156, -156, 488, 489, 490, 491, 512, + -156, 513, 514, 515, 501, 517, 503, 518, 519, 520, + 504, 328, 343, 155, 156, 157, 158, 159, 160, 161, + 530, 531, 532, 533, 534, 505, 328, 536, 162, 32, + 33, 34, 35, 36, 37, 544, 268, 546, 86, 506, + 507, 549, 509, 269, 270, 271, 272, 328, 510, 522, + 273, 557, 523, 559, 33, 34, 35, 36, 37, 563, + 328, 525, 328, 391, 392, 393, 394, 395, 396, 397, + 398, 526, 527, 529, 328, 537, 406, 407, 408, 539, + 540, 543, 328, 553, 555, 328, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 439, 440, 441, 442, 443, 444, 445, 446, + 316, 561, 562, 127, 521, 454, 455, 456, 132, 133, + 496, 135, 136, 137, 371, 139, 140, 31, 32, 33, + 34, 35, 36, 37, 338, 250, 292, 261, 0, 84, + 0, 0, 428, 73, 74, 75, 76, 77, 78, 79 +}; + +static const short yycheck[] = +{ + 2, 13, 22, 276, 296, 6, 6, 118, 41, 42, + 238, 0, 74, 75, 80, 301, 3, 4, 5, 81, + 7, 23, 249, 80, 251, 252, 253, 254, 255, 256, + 10, 11, 12, 20, 14, 308, 93, 4, 5, 331, + 326, 4, 5, 4, 5, 6, 7, 93, 81, 335, + 336, 31, 32, 33, 34, 35, 36, 37, 286, 287, + 81, 172, 4, 5, 6, 276, 352, 9, 4, 5, + 6, 41, 93, 9, 94, 76, 76, 64, 93, 99, + 100, 6, 309, 85, 51, 52, 53, 54, 55, 56, + 57, 4, 5, 6, 93, 97, 98, 308, 60, 86, + 87, 63, 64, 90, 91, 107, 217, 94, 110, 111, + 112, 81, 4, 5, 116, 74, 75, 345, 80, 86, + 87, 93, 81, 90, 91, 86, 87, 94, 276, 90, + 91, 4, 5, 94, 7, 93, 76, 88, 89, 79, + 538, 81, 4, 5, 93, 87, 60, 149, 150, 63, + 64, 87, 550, 155, 156, 157, 158, 159, 160, 161, + 308, 163, 164, 93, 166, 185, 80, 93, 81, 567, + 333, 4, 5, 86, 87, 556, 83, 90, 91, 93, + 80, 94, 563, 4, 5, 6, 545, 568, 95, 81, + 353, 93, 194, 195, 86, 87, 93, 556, 90, 91, + 202, 203, 94, 366, 563, 491, 208, 209, 93, 568, + 93, 4, 5, 86, 87, 6, 93, 90, 91, 6, + 506, 94, 4, 5, 6, 47, 48, 49, 6, 231, + 232, 233, 4, 5, 236, 93, 238, 93, 240, 241, + 531, 527, 60, 534, 93, 63, 64, 410, 83, 83, + 72, 73, 93, 544, 540, 77, 542, 83, 93, 93, + 423, 93, 80, 93, 266, 86, 87, 93, 554, 90, + 91, 83, 83, 94, 80, 277, 562, 388, 389, 565, + 80, 93, 93, 93, 286, 287, 288, 289, 6, 7, + 8, 93, 403, 86, 87, 297, 60, 90, 91, 63, + 64, 94, 6, 60, 86, 87, 63, 64, 90, 91, + 93, 6, 94, 325, 86, 87, 80, 93, 90, 91, + 300, 301, 94, 80, 93, 436, 437, 93, 60, 83, + 332, 63, 64, 51, 52, 53, 54, 55, 56, 57, + 451, 343, 93, 345, 346, 325, 326, 15, 80, 93, + 74, 75, 93, 21, 93, 335, 336, 81, 15, 93, + 6, 363, 364, 365, 21, 367, 6, 4, 6, 93, + 7, 93, 352, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 93, 21, 22, 23, 93, 6, 6, + 58, 59, 60, 61, 62, 63, 64, 86, 87, 88, + 89, 58, 59, 60, 61, 62, 63, 64, 364, 365, + 93, 367, 80, 60, 93, 93, 63, 64, 420, 421, + 422, 60, 424, 80, 63, 64, 93, 429, 430, 431, + 432, 433, 434, 80, 83, 84, 85, 86, 87, 88, + 89, 78, 93, 93, 18, 82, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 93, 65, 74, 75, 421, 422, 228, 424, 80, 81, + 93, 483, 484, 485, 486, 487, 488, 489, 490, 93, + 93, 93, 93, 74, 75, 93, 93, 93, 93, 501, + 81, 503, 504, 505, 93, 507, 93, 509, 510, 511, + 93, 491, 93, 65, 66, 67, 68, 69, 70, 71, + 522, 523, 524, 525, 526, 93, 506, 529, 80, 84, + 85, 86, 87, 88, 89, 537, 36, 539, 30, 93, + 93, 543, 93, 43, 44, 45, 46, 527, 93, 93, + 50, 553, 93, 555, 85, 86, 87, 88, 89, 561, + 540, 93, 542, 355, 356, 357, 358, 359, 360, 361, + 362, 93, 93, 93, 554, 93, 368, 369, 370, 93, + 93, 93, 562, 93, 93, 565, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 412, 413, 414, 415, 416, 417, 418, 419, + 295, 93, 93, 96, 513, 425, 426, 427, 101, 102, + 487, 104, 105, 106, 81, 108, 109, 83, 84, 85, + 86, 87, 88, 89, 308, 234, 264, 239, -1, 95, + -1, -1, 81, 51, 52, 53, 54, 55, 56, 57 +}; + +/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing + symbol of state STATE-NUM. */ +static const unsigned char yystos[] = +{ + 0, 97, 98, 0, 3, 4, 5, 7, 20, 64, + 86, 87, 90, 91, 94, 99, 151, 152, 175, 176, + 177, 101, 164, 100, 176, 176, 176, 177, 176, 80, + 101, 83, 84, 85, 86, 87, 88, 89, 4, 7, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 21, 22, 23, 78, 82, 104, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 121, 132, 142, + 146, 155, 162, 51, 52, 53, 54, 55, 56, 57, + 165, 166, 167, 175, 95, 153, 104, 176, 176, 176, + 176, 176, 176, 176, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, + 60, 63, 64, 168, 169, 170, 93, 81, 175, 167, + 6, 7, 8, 105, 167, 171, 173, 173, 175, 175, + 167, 167, 173, 173, 156, 173, 173, 173, 175, 173, + 173, 175, 175, 175, 175, 93, 154, 80, 80, 93, + 93, 80, 143, 80, 147, 65, 66, 67, 68, 69, + 70, 71, 80, 93, 93, 6, 117, 4, 5, 6, + 9, 87, 172, 175, 175, 144, 148, 175, 175, 175, + 175, 175, 175, 175, 157, 175, 175, 6, 81, 175, + 4, 5, 81, 154, 93, 93, 74, 75, 81, 74, + 75, 81, 93, 93, 41, 81, 158, 167, 93, 93, + 4, 5, 6, 9, 87, 175, 175, 6, 76, 6, + 6, 76, 6, 175, 175, 6, 80, 175, 175, 4, + 5, 93, 93, 154, 145, 154, 93, 149, 93, 150, + 93, 93, 80, 163, 93, 118, 118, 175, 175, 175, + 143, 47, 48, 49, 72, 73, 77, 174, 175, 174, + 175, 147, 175, 175, 159, 76, 79, 81, 36, 43, + 44, 45, 46, 50, 119, 120, 122, 93, 139, 145, + 145, 145, 145, 145, 145, 145, 93, 93, 93, 93, + 42, 81, 158, 160, 175, 93, 15, 21, 58, 59, + 61, 62, 80, 128, 168, 169, 170, 175, 133, 174, + 175, 174, 175, 175, 175, 6, 120, 7, 102, 175, + 175, 6, 102, 103, 6, 91, 94, 130, 176, 130, + 123, 15, 21, 58, 59, 61, 62, 80, 128, 140, + 168, 169, 170, 93, 145, 93, 93, 93, 176, 177, + 130, 176, 83, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 81, 102, 175, 103, 6, 130, 130, 134, 175, + 174, 175, 6, 161, 175, 6, 95, 130, 103, 6, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 125, + 175, 125, 125, 103, 127, 125, 124, 124, 124, 93, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 81, 93, + 93, 154, 154, 93, 154, 6, 103, 6, 136, 136, + 136, 136, 136, 136, 136, 136, 136, 137, 175, 137, + 137, 103, 135, 137, 136, 136, 136, 175, 175, 175, + 175, 175, 175, 93, 154, 154, 93, 154, 93, 93, + 93, 93, 175, 175, 175, 175, 175, 175, 175, 175, + 6, 131, 175, 93, 93, 93, 93, 93, 93, 93, + 93, 93, 175, 175, 175, 175, 131, 175, 175, 175, + 130, 93, 141, 93, 93, 93, 93, 93, 126, 93, + 93, 93, 175, 175, 175, 175, 130, 175, 175, 175, + 175, 126, 93, 93, 93, 93, 93, 93, 129, 93, + 175, 175, 175, 175, 175, 130, 175, 93, 129, 93, + 93, 129, 93, 93, 175, 139, 175, 130, 130, 175, + 129, 138, 171, 93, 93, 93, 139, 175, 130, 175, + 138, 93, 93, 175, 130, 93, 138, 130, 139, 138 +}; #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) # define YYSIZE_T __SIZE_TYPE__ @@ -1149,29 +1365,35 @@ union yyalloc #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) -#define YYEMPTY -2 +#define YYEMPTY (-2) #define YYEOF 0 + #define YYACCEPT goto yyacceptlab -#define YYABORT goto yyabortlab +#define YYABORT goto yyabortlab #define YYERROR goto yyerrlab1 + + /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. Once GCC version 2 has supplanted version 1, this can go. */ + #define YYFAIL goto yyerrlab + #define YYRECOVERING() (!!yyerrstatus) + #define YYBACKUP(Token, Value) \ do \ if (yychar == YYEMPTY && yylen == 1) \ { \ yychar = (Token); \ yylval = (Value); \ - yychar1 = YYTRANSLATE (yychar); \ + yytoken = YYTRANSLATE (yychar); \ YYPOPSTACK; \ goto yybackup; \ } \ else \ { \ - yyerror ("syntax error: cannot back up"); \ + yyerror ("syntax error: cannot back up");\ YYERROR; \ } \ while (0) @@ -1179,41 +1401,24 @@ while (0) #define YYTERROR 1 #define YYERRCODE 256 - /* YYLLOC_DEFAULT -- Compute the default location (before the actions - are run). - - When YYLLOC_DEFAULT is run, CURRENT is set the location of the - first token. By default, to implement support for ranges, extend - its range to the last symbol. */ + are run). */ #ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - Current.last_line = Rhs[N].last_line; \ - Current.last_column = Rhs[N].last_column; +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + Current.first_line = Rhs[1].first_line; \ + Current.first_column = Rhs[1].first_column; \ + Current.last_line = Rhs[N].last_line; \ + Current.last_column = Rhs[N].last_column; #endif - /* YYLEX -- calling `yylex' with the right arguments. */ -#if YYPURE -# if YYLSP_NEEDED -# ifdef YYLEX_PARAM -# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) -# else -# define YYLEX yylex (&yylval, &yylloc) -# endif -# else /* !YYLSP_NEEDED */ -# ifdef YYLEX_PARAM -# define YYLEX yylex (&yylval, YYLEX_PARAM) -# else -# define YYLEX yylex (&yylval) -# endif -# endif /* !YYLSP_NEEDED */ -#else /* !YYPURE */ -# define YYLEX yylex () -#endif /* !YYPURE */ - +#ifdef YYLEX_PARAM +# define YYLEX yylex (YYLEX_PARAM) +#else +# define YYLEX yylex () +#endif /* Enable debugging if requested. */ #if YYDEBUG @@ -1228,13 +1433,93 @@ do { \ if (yydebug) \ YYFPRINTF Args; \ } while (0) + +# define YYDSYMPRINT(Args) \ +do { \ + if (yydebug) \ + yysymprint Args; \ +} while (0) + +# define YYDSYMPRINTF(Title, Token, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yysymprint (stderr, \ + Token, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (0) + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (cinluded). | +`------------------------------------------------------------------*/ + +#if defined (__STDC__) || defined (__cplusplus) +static void +yy_stack_print (short *bottom, short *top) +#else +static void +yy_stack_print (bottom, top) + short *bottom; + short *top; +#endif +{ + YYFPRINTF (stderr, "Stack now"); + for (/* Nothing. */; bottom <= top; ++bottom) + YYFPRINTF (stderr, " %d", *bottom); + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (0) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +#if defined (__STDC__) || defined (__cplusplus) +static void +yy_reduce_print (int yyrule) +#else +static void +yy_reduce_print (yyrule) + int yyrule; +#endif +{ + int yyi; + unsigned int yylno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", + yyrule - 1, yylno); + /* Print the symbols being reduced, and their result. */ + for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) + YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]); + YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]); +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (Rule); \ +} while (0) + /* Nonzero means print parse trace. It is left uninitialized so that multiple parsers can coexist. */ int yydebug; #else /* !YYDEBUG */ # define YYDPRINTF(Args) +# define YYDSYMPRINT(Args) +# define YYDSYMPRINTF(Title, Token, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) #endif /* !YYDEBUG */ + /* YYINITDEPTH -- initial size of the parser's stacks. */ #ifndef YYINITDEPTH # define YYINITDEPTH 200 @@ -1254,8 +1539,10 @@ int yydebug; #ifndef YYMAXDEPTH # define YYMAXDEPTH 10000 #endif + -#ifdef YYERROR_VERBOSE + +#if YYERROR_VERBOSE # ifndef yystrlen # if defined (__GLIBC__) && defined (_STRING_H) @@ -1305,86 +1592,134 @@ yystpcpy (yydest, yysrc) } # endif # endif -#endif + +#endif /* !YYERROR_VERBOSE */ + -#line 315 "/usr/share/bison/bison.simple" +#if YYDEBUG +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ -/* The user can define YYPARSE_PARAM as the name of an argument to be passed - into yyparse. The argument should have type void *. - It should actually point to an object. - Grammar actions can access the variable by casting it - to the proper pointer type. */ +#if defined (__STDC__) || defined (__cplusplus) +static void +yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep) +#else +static void +yysymprint (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE *yyvaluep; +#endif +{ + /* Pacify ``unused variable'' warnings. */ + (void) yyvaluep; + + if (yytype < YYNTOKENS) + { + YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); +# ifdef YYPRINT + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# endif + } + else + YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); + + switch (yytype) + { + default: + break; + } + YYFPRINTF (yyoutput, ")"); +} + +#endif /* ! YYDEBUG */ +/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +#if defined (__STDC__) || defined (__cplusplus) +static void +yydestruct (int yytype, YYSTYPE *yyvaluep) +#else +static void +yydestruct (yytype, yyvaluep) + int yytype; + YYSTYPE *yyvaluep; +#endif +{ + /* Pacify ``unused variable'' warnings. */ + (void) yyvaluep; + + switch (yytype) + { + + default: + break; + } +} + + +/* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM # if defined (__STDC__) || defined (__cplusplus) -# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM -# define YYPARSE_PARAM_DECL +int yyparse (void *YYPARSE_PARAM); # else -# define YYPARSE_PARAM_ARG YYPARSE_PARAM -# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; +int yyparse (); # endif -#else /* !YYPARSE_PARAM */ -# define YYPARSE_PARAM_ARG -# define YYPARSE_PARAM_DECL -#endif /* !YYPARSE_PARAM */ - -/* Prevent warning if -Wstrict-prototypes. */ -#ifdef __GNUC__ -# ifdef YYPARSE_PARAM -int yyparse (void *); -# else +#else /* ! YYPARSE_PARAM */ +#if defined (__STDC__) || defined (__cplusplus) int yyparse (void); -# endif +#else +int yyparse (); #endif +#endif /* ! YYPARSE_PARAM */ -/* YY_DECL_VARIABLES -- depending whether we use a pure parser, - variables are global, or local to YYPARSE. */ -#define YY_DECL_NON_LSP_VARIABLES \ -/* The lookahead symbol. */ \ -int yychar; \ - \ -/* The semantic value of the lookahead symbol. */ \ -YYSTYPE yylval; \ - \ -/* Number of parse errors so far. */ \ + +/* The lookahead symbol. */ +int yychar; + +/* The semantic value of the lookahead symbol. */ +YYSTYPE yylval; + +/* Number of syntax errors so far. */ int yynerrs; -#if YYLSP_NEEDED -# define YY_DECL_VARIABLES \ -YY_DECL_NON_LSP_VARIABLES \ - \ -/* Location data for the lookahead symbol. */ \ -YYLTYPE yylloc; -#else -# define YY_DECL_VARIABLES \ -YY_DECL_NON_LSP_VARIABLES -#endif -/* If nonreentrant, generate the variables here. */ - -#if !YYPURE -YY_DECL_VARIABLES -#endif /* !YYPURE */ +/*----------. +| yyparse. | +`----------*/ +#ifdef YYPARSE_PARAM +# if defined (__STDC__) || defined (__cplusplus) +int yyparse (void *YYPARSE_PARAM) +# else +int yyparse (YYPARSE_PARAM) + void *YYPARSE_PARAM; +# endif +#else /* ! YYPARSE_PARAM */ +#if defined (__STDC__) || defined (__cplusplus) int -yyparse (YYPARSE_PARAM_ARG) - YYPARSE_PARAM_DECL -{ - /* If reentrant, generate the variables here. */ -#if YYPURE - YY_DECL_VARIABLES -#endif /* !YYPURE */ +yyparse (void) +#else +int +yyparse () +#endif +#endif +{ + register int yystate; register int yyn; int yyresult; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; /* Lookahead token as an internal (translated) token number. */ - int yychar1 = 0; + int yytoken = 0; /* Three stacks and their tools: `yyss': related to states, @@ -1394,7 +1729,7 @@ yyparse (YYPARSE_PARAM_ARG) Refer to the stacks thru separate pointers, to allow yyoverflow to reallocate them elsewhere. */ - /* The state stack. */ + /* The state stack. */ short yyssa[YYINITDEPTH]; short *yyss = yyssa; register short *yyssp; @@ -1404,31 +1739,19 @@ yyparse (YYPARSE_PARAM_ARG) YYSTYPE *yyvs = yyvsa; register YYSTYPE *yyvsp; -#if YYLSP_NEEDED - /* The location stack. */ - YYLTYPE yylsa[YYINITDEPTH]; - YYLTYPE *yyls = yylsa; - YYLTYPE *yylsp; -#endif -#if YYLSP_NEEDED -# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) -#else -# define YYPOPSTACK (yyvsp--, yyssp--) -#endif + +#define YYPOPSTACK (yyvsp--, yyssp--) YYSIZE_T yystacksize = YYINITDEPTH; - /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; -#if YYLSP_NEEDED - YYLTYPE yyloc; -#endif + /* When reducing, the number of symbols on the RHS of the reduced - rule. */ + rule. */ int yylen; YYDPRINTF ((stderr, "Starting parse\n")); @@ -1445,9 +1768,7 @@ yyparse (YYPARSE_PARAM_ARG) yyssp = yyss; yyvsp = yyvs; -#if YYLSP_NEEDED - yylsp = yyls; -#endif + goto yysetstate; /*------------------------------------------------------------. @@ -1462,7 +1783,7 @@ yyparse (YYPARSE_PARAM_ARG) yysetstate: *yyssp = yystate; - if (yyssp >= yyss + yystacksize - 1) + if (yyss + yystacksize - 1 <= yyssp) { /* Get the current used size of the three stacks, in elements. */ YYSIZE_T yysize = yyssp - yyss + 1; @@ -1475,24 +1796,17 @@ yyparse (YYPARSE_PARAM_ARG) YYSTYPE *yyvs1 = yyvs; short *yyss1 = yyss; + /* Each stack pointer address is followed by the size of the - data in use in that stack, in bytes. */ -# if YYLSP_NEEDED - YYLTYPE *yyls1 = yyls; - /* This used to be a conditional around just the two extra args, - but that might be undefined if yyoverflow is a macro. */ + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ yyoverflow ("parser stack overflow", &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), - &yyls1, yysize * sizeof (*yylsp), + &yystacksize); - yyls = yyls1; -# else - yyoverflow ("parser stack overflow", - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp), - &yystacksize); -# endif + yyss = yyss1; yyvs = yyvs1; } @@ -1501,10 +1815,10 @@ yyparse (YYPARSE_PARAM_ARG) goto yyoverflowlab; # else /* Extend the stack our own way. */ - if (yystacksize >= YYMAXDEPTH) + if (YYMAXDEPTH <= yystacksize) goto yyoverflowlab; yystacksize *= 2; - if (yystacksize > YYMAXDEPTH) + if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; { @@ -1515,10 +1829,8 @@ yyparse (YYPARSE_PARAM_ARG) goto yyoverflowlab; YYSTACK_RELOCATE (yyss); YYSTACK_RELOCATE (yyvs); -# if YYLSP_NEEDED - YYSTACK_RELOCATE (yyls); -# endif -# undef YYSTACK_RELOCATE + +# undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); } @@ -1527,14 +1839,12 @@ yyparse (YYPARSE_PARAM_ARG) yyssp = yyss + yysize - 1; yyvsp = yyvs + yysize - 1; -#if YYLSP_NEEDED - yylsp = yyls + yysize - 1; -#endif + YYDPRINTF ((stderr, "Stack size increased to %lu\n", (unsigned long int) yystacksize)); - if (yyssp >= yyss + yystacksize - 1) + if (yyss + yystacksize - 1 <= yyssp) YYABORT; } @@ -1542,7 +1852,6 @@ yyparse (YYPARSE_PARAM_ARG) goto yybackup; - /*-----------. | yybackup. | `-----------*/ @@ -1555,88 +1864,55 @@ yybackup: /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; - if (yyn == YYFLAG) + if (yyn == YYPACT_NINF) goto yydefault; /* Not known => get a lookahead token if don't already have one. */ - /* yychar is either YYEMPTY or YYEOF - or a valid token in external form. */ - + /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); yychar = YYLEX; } - /* Convert token to internal form (in yychar1) for indexing tables with */ - - if (yychar <= 0) /* This means end of input. */ + if (yychar <= YYEOF) { - yychar1 = 0; - yychar = YYEOF; /* Don't call YYLEX any more */ - + yychar = yytoken = YYEOF; YYDPRINTF ((stderr, "Now at end of input.\n")); } else { - yychar1 = YYTRANSLATE (yychar); - -#if YYDEBUG - /* We have to keep this `#if YYDEBUG', since we use variables - which are defined only if `YYDEBUG' is set. */ - if (yydebug) - { - YYFPRINTF (stderr, "Next token is %d (%s", - yychar, yytname[yychar1]); - /* Give the individual parser a way to print the precise - meaning of a token, for further debugging info. */ -# ifdef YYPRINT - YYPRINT (stderr, yychar, yylval); -# endif - YYFPRINTF (stderr, ")\n"); - } -#endif + yytoken = YYTRANSLATE (yychar); + YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc); } - yyn += yychar1; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) goto yydefault; - yyn = yytable[yyn]; - - /* yyn is what to do for this token type in this state. - Negative => reduce, -yyn is rule number. - Positive => shift, yyn is new state. - New state is final state => don't bother to shift, - just return success. - 0, or most negative number => error. */ - - if (yyn < 0) + if (yyn <= 0) { - if (yyn == YYFLAG) + if (yyn == 0 || yyn == YYTABLE_NINF) goto yyerrlab; yyn = -yyn; goto yyreduce; } - else if (yyn == 0) - goto yyerrlab; if (yyn == YYFINAL) YYACCEPT; /* Shift the lookahead token. */ - YYDPRINTF ((stderr, "Shifting token %d (%s), ", - yychar, yytname[yychar1])); + YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken])); /* Discard the token being shifted unless it is eof. */ if (yychar != YYEOF) yychar = YYEMPTY; *++yyvsp = yylval; -#if YYLSP_NEEDED - *++yylsp = yylloc; -#endif + /* Count tokens shifted since error; after three, turn off error status. */ @@ -1667,42 +1943,20 @@ yyreduce: /* If YYLEN is nonzero, implement the default value of the action: `$$ = $1'. - Otherwise, the following line sets YYVAL to the semantic value of - the lookahead token. This behavior is undocumented and Bison + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison users should not rely upon it. Assigning to YYVAL unconditionally makes the parser a bit smaller, and it avoids a GCC warning that YYVAL may be used uninitialized. */ yyval = yyvsp[1-yylen]; -#if YYLSP_NEEDED - /* Similarly for the default location. Let the user run additional - commands if for instance locations are ranges. */ - yyloc = yylsp[1-yylen]; - YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); -#endif -#if YYDEBUG - /* We have to keep this `#if YYDEBUG', since we use variables which - are defined only if `YYDEBUG' is set. */ - if (yydebug) + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 2: +#line 361 "parser.y" { - int yyi; - - YYFPRINTF (stderr, "Reducing via rule %d (line %d), ", - yyn, yyrline[yyn]); - - /* Print the symbols being reduced, and their result. */ - for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++) - YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); - YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]); - } -#endif - - switch (yyn) { - -case 1: -#line 361 "./parser.y" -{ resource_t *rsc; /* First add stringtables to the resource-list */ rsc = build_stt_resources(sttres); @@ -1731,15 +1985,17 @@ case 1: yyvsp[0].res = rsc; /* Final statement before were done */ resource_top = get_resource_head(yyvsp[0].res); - } + ;} break; -case 2: -#line 395 "./parser.y" -{ yyval.res = NULL; want_id = 1; } + + case 3: +#line 395 "parser.y" + { yyval.res = NULL; want_id = 1; ;} break; -case 3: -#line 396 "./parser.y" -{ + + case 4: +#line 396 "parser.y" + { if(yyvsp[0].res) { resource_t *tail = yyvsp[0].res; @@ -1783,11 +2039,12 @@ case 3: if(!dont_want_id) /* See comments in language parsing below */ want_id = 1; dont_want_id = 0; - } + ;} break; -case 5: -#line 472 "./parser.y" -{ + + case 6: +#line 472 "parser.y" + { yyval.res = yyvsp[0].res; if(yyval.res) { @@ -1798,11 +2055,12 @@ case 5: yyval.res->name->name.i_name = yyvsp[-2].num; chat("Got %s (%d)", get_typename(yyvsp[0].res), yyval.res->name->name.i_name); } - } + ;} break; -case 6: -#line 484 "./parser.y" -{ + + case 7: +#line 484 "parser.y" + { yyval.res = yyvsp[0].res; if(yyval.res) { @@ -1811,26 +2069,29 @@ case 6: yyval.res->name->name.s_name = yyvsp[-2].str; chat("Got %s (%s)", get_typename(yyvsp[0].res), yyval.res->name->name.s_name->str.cstr); } - } + ;} break; -case 7: -#line 494 "./parser.y" -{ + + case 8: +#line 494 "parser.y" + { /* Don't do anything, stringtables are converted to * resource_t structures when we are finished parsing and * the final rule of the parser is reduced (see above) */ yyval.res = NULL; chat("Got STRINGTABLE"); - } + ;} break; -case 8: -#line 502 "./parser.y" -{want_nl = 1; } + + case 9: +#line 502 "parser.y" + {want_nl = 1; ;} break; -case 9: -#line 502 "./parser.y" -{ + + case 10: +#line 502 "parser.y" + { /* We *NEED* the newline to delimit the expression. * Otherwise, we would not be able to set the next * want_id anymore because of the token-lookahead. @@ -1867,53 +2128,61 @@ case 9: currentlanguage = new_language(yyvsp[-2].num, yyvsp[0].num); yyval.res = NULL; chat("Got LANGUAGE %d,%d (0x%04x)", yyvsp[-2].num, yyvsp[0].num, (yyvsp[0].num<<10) + yyvsp[-2].num); - } + ;} break; -case 10: -#line 546 "./parser.y" -{ yychar = rsrcid_to_token(yychar); } + + case 11: +#line 546 "parser.y" + { yychar = rsrcid_to_token(yychar); ;} break; -case 11: -#line 552 "./parser.y" -{ + + case 12: +#line 552 "parser.y" + { if(yyvsp[0].num > 65535 || yyvsp[0].num < -32768) yyerror("Resource's ID out of range (%d)", yyvsp[0].num); yyval.nid = new_name_id(); yyval.nid->type = name_ord; yyval.nid->name.i_name = yyvsp[0].num; - } + ;} break; -case 12: -#line 559 "./parser.y" -{ + + case 13: +#line 559 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_str; yyval.nid->name.s_name = yyvsp[0].str; - } + ;} break; -case 13: -#line 569 "./parser.y" -{ yyval.nid = yyvsp[0].nid; } + + case 14: +#line 569 "parser.y" + { yyval.nid = yyvsp[0].nid; ;} break; -case 14: -#line 570 "./parser.y" -{ + + case 15: +#line 570 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_str; yyval.nid->name.s_name = yyvsp[0].str; - } + ;} break; -case 15: -#line 579 "./parser.y" -{ yyval.res = new_resource(res_acc, yyvsp[0].acc, yyvsp[0].acc->memopt, yyvsp[0].acc->lvc.language); } + + case 16: +#line 579 "parser.y" + { yyval.res = new_resource(res_acc, yyvsp[0].acc, yyvsp[0].acc->memopt, yyvsp[0].acc->lvc.language); ;} break; -case 16: -#line 580 "./parser.y" -{ yyval.res = new_resource(res_bmp, yyvsp[0].bmp, yyvsp[0].bmp->memopt, yyvsp[0].bmp->data->lvc.language); } + + case 17: +#line 580 "parser.y" + { yyval.res = new_resource(res_bmp, yyvsp[0].bmp, yyvsp[0].bmp->memopt, yyvsp[0].bmp->data->lvc.language); ;} break; -case 17: -#line 581 "./parser.y" -{ + + case 18: +#line 581 "parser.y" + { resource_t *rsc; if(yyvsp[0].ani->type == res_anicur) { @@ -1936,36 +2205,42 @@ case 17: else internal_error(__FILE__, __LINE__, "Invalid top-level type %d in cursor resource", yyvsp[0].ani->type); free(yyvsp[0].ani); - } + ;} break; -case 18: -#line 605 "./parser.y" -{ yyval.res = new_resource(res_dlg, yyvsp[0].dlg, yyvsp[0].dlg->memopt, yyvsp[0].dlg->lvc.language); } + + case 19: +#line 605 "parser.y" + { yyval.res = new_resource(res_dlg, yyvsp[0].dlg, yyvsp[0].dlg->memopt, yyvsp[0].dlg->lvc.language); ;} break; -case 19: -#line 606 "./parser.y" -{ + + case 20: +#line 606 "parser.y" + { if(win32) yyval.res = new_resource(res_dlgex, yyvsp[0].dlgex, yyvsp[0].dlgex->memopt, yyvsp[0].dlgex->lvc.language); else yyval.res = NULL; - } + ;} break; -case 20: -#line 612 "./parser.y" -{ yyval.res = new_resource(res_dlginit, yyvsp[0].dginit, yyvsp[0].dginit->memopt, yyvsp[0].dginit->data->lvc.language); } + + case 21: +#line 612 "parser.y" + { yyval.res = new_resource(res_dlginit, yyvsp[0].dginit, yyvsp[0].dginit->memopt, yyvsp[0].dginit->data->lvc.language); ;} break; -case 21: -#line 613 "./parser.y" -{ yyval.res = new_resource(res_fnt, yyvsp[0].fnt, yyvsp[0].fnt->memopt, yyvsp[0].fnt->data->lvc.language); } + + case 22: +#line 613 "parser.y" + { yyval.res = new_resource(res_fnt, yyvsp[0].fnt, yyvsp[0].fnt->memopt, yyvsp[0].fnt->data->lvc.language); ;} break; -case 22: -#line 614 "./parser.y" -{ yyval.res = new_resource(res_fntdir, yyvsp[0].fnd, yyvsp[0].fnd->memopt, yyvsp[0].fnd->data->lvc.language); } + + case 23: +#line 614 "parser.y" + { yyval.res = new_resource(res_fntdir, yyvsp[0].fnd, yyvsp[0].fnd->memopt, yyvsp[0].fnd->data->lvc.language); ;} break; -case 23: -#line 615 "./parser.y" -{ + + case 24: +#line 615 "parser.y" + { resource_t *rsc; if(yyvsp[0].ani->type == res_aniico) { @@ -1988,60 +2263,72 @@ case 23: else internal_error(__FILE__, __LINE__, "Invalid top-level type %d in icon resource", yyvsp[0].ani->type); free(yyvsp[0].ani); - } + ;} break; -case 24: -#line 639 "./parser.y" -{ yyval.res = new_resource(res_men, yyvsp[0].men, yyvsp[0].men->memopt, yyvsp[0].men->lvc.language); } + + case 25: +#line 639 "parser.y" + { yyval.res = new_resource(res_men, yyvsp[0].men, yyvsp[0].men->memopt, yyvsp[0].men->lvc.language); ;} break; -case 25: -#line 640 "./parser.y" -{ + + case 26: +#line 640 "parser.y" + { if(win32) yyval.res = new_resource(res_menex, yyvsp[0].menex, yyvsp[0].menex->memopt, yyvsp[0].menex->lvc.language); else yyval.res = NULL; - } + ;} break; -case 26: -#line 646 "./parser.y" -{ yyval.res = new_resource(res_msg, yyvsp[0].msg, WRC_MO_MOVEABLE | WRC_MO_DISCARDABLE, yyvsp[0].msg->data->lvc.language); } + + case 27: +#line 646 "parser.y" + { yyval.res = new_resource(res_msg, yyvsp[0].msg, WRC_MO_MOVEABLE | WRC_MO_DISCARDABLE, yyvsp[0].msg->data->lvc.language); ;} break; -case 27: -#line 647 "./parser.y" -{ yyval.res = new_resource(res_rdt, yyvsp[0].rdt, yyvsp[0].rdt->memopt, yyvsp[0].rdt->data->lvc.language); } + + case 28: +#line 647 "parser.y" + { yyval.res = new_resource(res_rdt, yyvsp[0].rdt, yyvsp[0].rdt->memopt, yyvsp[0].rdt->data->lvc.language); ;} break; -case 28: -#line 648 "./parser.y" -{ yyval.res = new_resource(res_toolbar, yyvsp[0].tlbar, yyvsp[0].tlbar->memopt, yyvsp[0].tlbar->lvc.language); } + + case 29: +#line 648 "parser.y" + { yyval.res = new_resource(res_toolbar, yyvsp[0].tlbar, yyvsp[0].tlbar->memopt, yyvsp[0].tlbar->lvc.language); ;} break; -case 29: -#line 649 "./parser.y" -{ yyval.res = new_resource(res_usr, yyvsp[0].usr, yyvsp[0].usr->memopt, yyvsp[0].usr->data->lvc.language); } + + case 30: +#line 649 "parser.y" + { yyval.res = new_resource(res_usr, yyvsp[0].usr, yyvsp[0].usr->memopt, yyvsp[0].usr->data->lvc.language); ;} break; -case 30: -#line 650 "./parser.y" -{ yyval.res = new_resource(res_ver, yyvsp[0].veri, WRC_MO_MOVEABLE | WRC_MO_DISCARDABLE, yyvsp[0].veri->lvc.language); } + + case 31: +#line 650 "parser.y" + { yyval.res = new_resource(res_ver, yyvsp[0].veri, WRC_MO_MOVEABLE | WRC_MO_DISCARDABLE, yyvsp[0].veri->lvc.language); ;} break; -case 31: -#line 654 "./parser.y" -{ yyval.str = make_filename(yyvsp[0].str); } + + case 32: +#line 654 "parser.y" + { yyval.str = make_filename(yyvsp[0].str); ;} break; -case 32: -#line 655 "./parser.y" -{ yyval.str = make_filename(yyvsp[0].str); } + + case 33: +#line 655 "parser.y" + { yyval.str = make_filename(yyvsp[0].str); ;} break; -case 33: -#line 656 "./parser.y" -{ yyval.str = make_filename(yyvsp[0].str); } + + case 34: +#line 656 "parser.y" + { yyval.str = make_filename(yyvsp[0].str); ;} break; -case 34: -#line 660 "./parser.y" -{ yyval.bmp = new_bitmap(yyvsp[0].raw, yyvsp[-1].iptr); } + + case 35: +#line 660 "parser.y" + { yyval.bmp = new_bitmap(yyvsp[0].raw, yyvsp[-1].iptr); ;} break; -case 35: -#line 664 "./parser.y" -{ + + case 36: +#line 664 "parser.y" + { yyval.ani = new_ani_any(); if(yyvsp[0].raw->size > 4 && !memcmp(yyvsp[0].raw->data, riff, sizeof(riff))) { @@ -2053,11 +2340,12 @@ case 35: yyval.ani->type = res_curg; yyval.ani->u.curg = new_cursor_group(yyvsp[0].raw, yyvsp[-1].iptr); } - } + ;} break; -case 36: -#line 680 "./parser.y" -{ + + case 37: +#line 680 "parser.y" + { yyval.ani = new_ani_any(); if(yyvsp[0].raw->size > 4 && !memcmp(yyvsp[0].raw->data, riff, sizeof(riff))) { @@ -2069,35 +2357,41 @@ case 36: yyval.ani->type = res_icog; yyval.ani->u.icog = new_icon_group(yyvsp[0].raw, yyvsp[-1].iptr); } - } + ;} break; -case 37: -#line 702 "./parser.y" -{ yyval.fnt = new_font(yyvsp[0].raw, yyvsp[-1].iptr); } + + case 38: +#line 702 "parser.y" + { yyval.fnt = new_font(yyvsp[0].raw, yyvsp[-1].iptr); ;} break; -case 38: -#line 712 "./parser.y" -{ yyval.fnd = new_fontdir(yyvsp[0].raw, yyvsp[-1].iptr); } + + case 39: +#line 712 "parser.y" + { yyval.fnd = new_fontdir(yyvsp[0].raw, yyvsp[-1].iptr); ;} break; -case 39: -#line 720 "./parser.y" -{ + + case 40: +#line 720 "parser.y" + { if(!win32) yywarning("MESSAGETABLE not supported in 16-bit mode"); yyval.msg = new_messagetable(yyvsp[0].raw, yyvsp[-1].iptr); - } + ;} break; -case 40: -#line 728 "./parser.y" -{ yyval.rdt = new_rcdata(yyvsp[0].raw, yyvsp[-1].iptr); } + + case 41: +#line 728 "parser.y" + { yyval.rdt = new_rcdata(yyvsp[0].raw, yyvsp[-1].iptr); ;} break; -case 41: -#line 732 "./parser.y" -{ yyval.dginit = new_dlginit(yyvsp[0].raw, yyvsp[-1].iptr); } + + case 42: +#line 732 "parser.y" + { yyval.dginit = new_dlginit(yyvsp[0].raw, yyvsp[-1].iptr); ;} break; -case 42: -#line 736 "./parser.y" -{ + + case 43: +#line 736 "parser.y" + { #ifdef WORDS_BIGENDIAN if(pedantic && byteorder != WRC_BO_LITTLE) #else @@ -2105,27 +2399,30 @@ case 42: #endif yywarning("Byteordering is not little-endian and type cannot be interpreted"); yyval.usr = new_user(yyvsp[-2].nid, yyvsp[0].raw, yyvsp[-1].iptr); - } + ;} break; -case 43: -#line 747 "./parser.y" -{ + + case 44: +#line 747 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_ord; yyval.nid->name.i_name = yyvsp[0].num; - } + ;} break; -case 44: -#line 752 "./parser.y" -{ + + case 45: +#line 752 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_str; yyval.nid->name.s_name = yyvsp[0].str; - } + ;} break; -case 45: -#line 761 "./parser.y" -{ + + case 46: +#line 761 "parser.y" + { yyval.acc = new_accelerator(); if(yyvsp[-4].iptr) { @@ -2146,63 +2443,77 @@ case 45: } if(!yyval.acc->lvc.language) yyval.acc->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 46: -#line 785 "./parser.y" -{ yyval.event=NULL; } + + case 47: +#line 785 "parser.y" + { yyval.event=NULL; ;} break; -case 47: -#line 786 "./parser.y" -{ yyval.event=add_string_event(yyvsp[-3].str, yyvsp[-1].num, yyvsp[0].num, yyvsp[-4].event); } + + case 48: +#line 786 "parser.y" + { yyval.event=add_string_event(yyvsp[-3].str, yyvsp[-1].num, yyvsp[0].num, yyvsp[-4].event); ;} break; -case 48: -#line 787 "./parser.y" -{ yyval.event=add_event(yyvsp[-3].num, yyvsp[-1].num, yyvsp[0].num, yyvsp[-4].event); } + + case 49: +#line 787 "parser.y" + { yyval.event=add_event(yyvsp[-3].num, yyvsp[-1].num, yyvsp[0].num, yyvsp[-4].event); ;} break; -case 49: -#line 796 "./parser.y" -{ yyval.num = 0; } + + case 50: +#line 796 "parser.y" + { yyval.num = 0; ;} break; -case 50: -#line 797 "./parser.y" -{ yyval.num = yyvsp[0].num; } + + case 51: +#line 797 "parser.y" + { yyval.num = yyvsp[0].num; ;} break; -case 51: -#line 800 "./parser.y" -{ yyval.num = yyvsp[0].num; } + + case 52: +#line 800 "parser.y" + { yyval.num = yyvsp[0].num; ;} break; -case 52: -#line 801 "./parser.y" -{ yyval.num = yyvsp[-2].num | yyvsp[0].num; } + + case 53: +#line 801 "parser.y" + { yyval.num = yyvsp[-2].num | yyvsp[0].num; ;} break; -case 53: -#line 804 "./parser.y" -{ yyval.num = WRC_AF_NOINVERT; } + + case 54: +#line 804 "parser.y" + { yyval.num = WRC_AF_NOINVERT; ;} break; -case 54: -#line 805 "./parser.y" -{ yyval.num = WRC_AF_SHIFT; } + + case 55: +#line 805 "parser.y" + { yyval.num = WRC_AF_SHIFT; ;} break; -case 55: -#line 806 "./parser.y" -{ yyval.num = WRC_AF_CONTROL; } + + case 56: +#line 806 "parser.y" + { yyval.num = WRC_AF_CONTROL; ;} break; -case 56: -#line 807 "./parser.y" -{ yyval.num = WRC_AF_ALT; } + + case 57: +#line 807 "parser.y" + { yyval.num = WRC_AF_ALT; ;} break; -case 57: -#line 808 "./parser.y" -{ yyval.num = WRC_AF_ASCII; } + + case 58: +#line 808 "parser.y" + { yyval.num = WRC_AF_ASCII; ;} break; -case 58: -#line 809 "./parser.y" -{ yyval.num = WRC_AF_VIRTKEY; } + + case 59: +#line 809 "parser.y" + { yyval.num = WRC_AF_VIRTKEY; ;} break; -case 59: -#line 815 "./parser.y" -{ + + case 60: +#line 815 "parser.y" + { if(yyvsp[-11].iptr) { yyvsp[-3].dlg->memopt = *(yyvsp[-11].iptr); @@ -2232,133 +2543,163 @@ case 59: if(!yyval.dlg->lvc.language) yyval.dlg->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 60: -#line 849 "./parser.y" -{ yyval.dlg=new_dialog(); } + + case 61: +#line 849 "parser.y" + { yyval.dlg=new_dialog(); ;} break; -case 61: -#line 850 "./parser.y" -{ yyval.dlg=dialog_style(yyvsp[0].style,yyvsp[-2].dlg); } + + case 62: +#line 850 "parser.y" + { yyval.dlg=dialog_style(yyvsp[0].style,yyvsp[-2].dlg); ;} break; -case 62: -#line 851 "./parser.y" -{ yyval.dlg=dialog_exstyle(yyvsp[0].style,yyvsp[-2].dlg); } + + case 63: +#line 851 "parser.y" + { yyval.dlg=dialog_exstyle(yyvsp[0].style,yyvsp[-2].dlg); ;} break; -case 63: -#line 852 "./parser.y" -{ yyval.dlg=dialog_caption(yyvsp[0].str,yyvsp[-2].dlg); } + + case 64: +#line 852 "parser.y" + { yyval.dlg=dialog_caption(yyvsp[0].str,yyvsp[-2].dlg); ;} break; -case 64: -#line 853 "./parser.y" -{ yyval.dlg=dialog_font(yyvsp[0].fntid,yyvsp[-1].dlg); } + + case 65: +#line 853 "parser.y" + { yyval.dlg=dialog_font(yyvsp[0].fntid,yyvsp[-1].dlg); ;} break; -case 65: -#line 854 "./parser.y" -{ yyval.dlg=dialog_class(yyvsp[0].nid,yyvsp[-2].dlg); } + + case 66: +#line 854 "parser.y" + { yyval.dlg=dialog_class(yyvsp[0].nid,yyvsp[-2].dlg); ;} break; -case 66: -#line 855 "./parser.y" -{ yyval.dlg=dialog_menu(yyvsp[0].nid,yyvsp[-2].dlg); } + + case 67: +#line 855 "parser.y" + { yyval.dlg=dialog_menu(yyvsp[0].nid,yyvsp[-2].dlg); ;} break; -case 67: -#line 856 "./parser.y" -{ yyval.dlg=dialog_language(yyvsp[0].lan,yyvsp[-1].dlg); } + + case 68: +#line 856 "parser.y" + { yyval.dlg=dialog_language(yyvsp[0].lan,yyvsp[-1].dlg); ;} break; -case 68: -#line 857 "./parser.y" -{ yyval.dlg=dialog_characteristics(yyvsp[0].chars,yyvsp[-1].dlg); } + + case 69: +#line 857 "parser.y" + { yyval.dlg=dialog_characteristics(yyvsp[0].chars,yyvsp[-1].dlg); ;} break; -case 69: -#line 858 "./parser.y" -{ yyval.dlg=dialog_version(yyvsp[0].ver,yyvsp[-1].dlg); } + + case 70: +#line 858 "parser.y" + { yyval.dlg=dialog_version(yyvsp[0].ver,yyvsp[-1].dlg); ;} break; -case 70: -#line 861 "./parser.y" -{ yyval.ctl = NULL; } + + case 71: +#line 861 "parser.y" + { yyval.ctl = NULL; ;} break; -case 71: -#line 862 "./parser.y" -{ yyval.ctl=ins_ctrl(-1, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 72: +#line 862 "parser.y" + { yyval.ctl=ins_ctrl(-1, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 72: -#line 863 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_EDIT, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 73: +#line 863 "parser.y" + { yyval.ctl=ins_ctrl(CT_EDIT, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 73: -#line 864 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_LISTBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 74: +#line 864 "parser.y" + { yyval.ctl=ins_ctrl(CT_LISTBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 74: -#line 865 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_COMBOBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 75: +#line 865 "parser.y" + { yyval.ctl=ins_ctrl(CT_COMBOBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 75: -#line 866 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_SCROLLBAR, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 76: +#line 866 "parser.y" + { yyval.ctl=ins_ctrl(CT_SCROLLBAR, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 76: -#line 867 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_CHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 77: +#line 867 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_CHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 77: -#line 868 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_DEFPUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 78: +#line 868 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_DEFPUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 78: -#line 869 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_GROUPBOX, yyvsp[0].ctl, yyvsp[-2].ctl);} + + case 79: +#line 869 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_GROUPBOX, yyvsp[0].ctl, yyvsp[-2].ctl);;} break; -case 79: -#line 870 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_PUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 80: +#line 870 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_PUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 80: -#line 872 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_RADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 81: +#line 872 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_RADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 81: -#line 873 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTO3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 82: +#line 873 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTO3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 82: -#line 874 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 83: +#line 874 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 83: -#line 875 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTOCHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 84: +#line 875 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTOCHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 84: -#line 876 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTORADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 85: +#line 876 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTORADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 85: -#line 877 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_LEFT, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 86: +#line 877 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_LEFT, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 86: -#line 878 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_CENTER, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 87: +#line 878 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_CENTER, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 87: -#line 879 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_RIGHT, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 88: +#line 879 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_RIGHT, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 88: -#line 881 "./parser.y" -{ + + case 89: +#line 881 "parser.y" + { yyvsp[0].ctl->title = yyvsp[-7].nid; yyvsp[0].ctl->id = yyvsp[-5].num; yyvsp[0].ctl->x = yyvsp[-3].num; yyvsp[0].ctl->y = yyvsp[-1].num; yyval.ctl = ins_ctrl(CT_STATIC, SS_ICON, yyvsp[0].ctl, yyvsp[-9].ctl); - } + ;} break; -case 89: -#line 891 "./parser.y" -{ + + case 90: +#line 891 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = new_name_id(); yyval.ctl->title->type = name_str; @@ -2379,11 +2720,12 @@ case 89: } free(yyvsp[0].styles); } - } + ;} break; -case 90: -#line 916 "./parser.y" -{ + + case 91: +#line 916 "parser.y" + { yyval.ctl = new_control(); yyval.ctl->id = yyvsp[-9].num; yyval.ctl->x = yyvsp[-7].num; @@ -2401,33 +2743,37 @@ case 90: } free(yyvsp[0].styles); } - } + ;} break; -case 91: -#line 938 "./parser.y" -{ yyval.ctl = new_control(); } + + case 92: +#line 938 "parser.y" + { yyval.ctl = new_control(); ;} break; -case 92: -#line 940 "./parser.y" -{ + + case 93: +#line 940 "parser.y" + { yyval.ctl = new_control(); yyval.ctl->width = yyvsp[-2].num; yyval.ctl->height = yyvsp[0].num; - } + ;} break; -case 93: -#line 945 "./parser.y" -{ + + case 94: +#line 945 "parser.y" + { yyval.ctl = new_control(); yyval.ctl->width = yyvsp[-4].num; yyval.ctl->height = yyvsp[-2].num; yyval.ctl->style = yyvsp[0].style; yyval.ctl->gotstyle = TRUE; - } + ;} break; -case 94: -#line 952 "./parser.y" -{ + + case 95: +#line 952 "parser.y" + { yyval.ctl = new_control(); yyval.ctl->width = yyvsp[-6].num; yyval.ctl->height = yyvsp[-4].num; @@ -2435,11 +2781,12 @@ case 94: yyval.ctl->gotstyle = TRUE; yyval.ctl->exstyle = yyvsp[0].style; yyval.ctl->gotexstyle = TRUE; - } + ;} break; -case 95: -#line 963 "./parser.y" -{ + + case 96: +#line 963 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = yyvsp[-16].nid; yyval.ctl->id = yyvsp[-14].num; @@ -2452,11 +2799,12 @@ case 95: yyval.ctl->height = yyvsp[-2].num; yyval.ctl->exstyle = yyvsp[0].style; yyval.ctl->gotexstyle = TRUE; - } + ;} break; -case 96: -#line 977 "./parser.y" -{ + + case 97: +#line 977 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = yyvsp[-14].nid; yyval.ctl->id = yyvsp[-12].num; @@ -2467,59 +2815,70 @@ case 96: yyval.ctl->y = yyvsp[-4].num; yyval.ctl->width = yyvsp[-2].num; yyval.ctl->height = yyvsp[0].num; - } + ;} break; -case 97: -#line 992 "./parser.y" -{ yyval.fntid = new_font_id(yyvsp[-2].num, yyvsp[0].str, 0, 0); } + + case 98: +#line 992 "parser.y" + { yyval.fntid = new_font_id(yyvsp[-2].num, yyvsp[0].str, 0, 0); ;} break; -case 98: -#line 997 "./parser.y" -{ yyval.styles = NULL; } + + case 99: +#line 997 "parser.y" + { yyval.styles = NULL; ;} break; -case 99: -#line 998 "./parser.y" -{ yyval.styles = new_style_pair(yyvsp[0].style, 0); } + + case 100: +#line 998 "parser.y" + { yyval.styles = new_style_pair(yyvsp[0].style, 0); ;} break; -case 100: -#line 999 "./parser.y" -{ yyval.styles = new_style_pair(yyvsp[-2].style, yyvsp[0].style); } + + case 101: +#line 999 "parser.y" + { yyval.styles = new_style_pair(yyvsp[-2].style, yyvsp[0].style); ;} break; -case 101: -#line 1003 "./parser.y" -{ yyval.style = new_style(yyvsp[-2].style->or_mask | yyvsp[0].style->or_mask, yyvsp[-2].style->and_mask | yyvsp[0].style->and_mask); free(yyvsp[-2].style); free(yyvsp[0].style);} + + case 102: +#line 1003 "parser.y" + { yyval.style = new_style(yyvsp[-2].style->or_mask | yyvsp[0].style->or_mask, yyvsp[-2].style->and_mask | yyvsp[0].style->and_mask); free(yyvsp[-2].style); free(yyvsp[0].style);;} break; -case 102: -#line 1004 "./parser.y" -{ yyval.style = yyvsp[-1].style; } + + case 103: +#line 1004 "parser.y" + { yyval.style = yyvsp[-1].style; ;} break; -case 103: -#line 1005 "./parser.y" -{ yyval.style = new_style(yyvsp[0].num, 0); } + + case 104: +#line 1005 "parser.y" + { yyval.style = new_style(yyvsp[0].num, 0); ;} break; -case 104: -#line 1006 "./parser.y" -{ yyval.style = new_style(0, yyvsp[0].num); } + + case 105: +#line 1006 "parser.y" + { yyval.style = new_style(0, yyvsp[0].num); ;} break; -case 105: -#line 1010 "./parser.y" -{ + + case 106: +#line 1010 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_ord; yyval.nid->name.i_name = yyvsp[0].num; - } + ;} break; -case 106: -#line 1015 "./parser.y" -{ + + case 107: +#line 1015 "parser.y" + { yyval.nid = new_name_id(); yyval.nid->type = name_str; yyval.nid->name.s_name = yyvsp[0].str; - } + ;} break; -case 107: -#line 1024 "./parser.y" -{ + + case 108: +#line 1024 "parser.y" + { if(!win32) yywarning("DIALOGEX not supported in 16-bit mode"); if(yyvsp[-12].iptr) @@ -2558,137 +2917,168 @@ case 107: if(!yyval.dlgex->lvc.language) yyval.dlgex->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 108: -#line 1067 "./parser.y" -{ yyval.dlgex=new_dialogex(); } + + case 109: +#line 1067 "parser.y" + { yyval.dlgex=new_dialogex(); ;} break; -case 109: -#line 1068 "./parser.y" -{ yyval.dlgex=dialogex_style(yyvsp[0].style,yyvsp[-2].dlgex); } + + case 110: +#line 1068 "parser.y" + { yyval.dlgex=dialogex_style(yyvsp[0].style,yyvsp[-2].dlgex); ;} break; -case 110: -#line 1069 "./parser.y" -{ yyval.dlgex=dialogex_exstyle(yyvsp[0].style,yyvsp[-2].dlgex); } + + case 111: +#line 1069 "parser.y" + { yyval.dlgex=dialogex_exstyle(yyvsp[0].style,yyvsp[-2].dlgex); ;} break; -case 111: -#line 1070 "./parser.y" -{ yyval.dlgex=dialogex_caption(yyvsp[0].str,yyvsp[-2].dlgex); } + + case 112: +#line 1070 "parser.y" + { yyval.dlgex=dialogex_caption(yyvsp[0].str,yyvsp[-2].dlgex); ;} break; -case 112: -#line 1071 "./parser.y" -{ yyval.dlgex=dialogex_font(yyvsp[0].fntid,yyvsp[-1].dlgex); } + + case 113: +#line 1071 "parser.y" + { yyval.dlgex=dialogex_font(yyvsp[0].fntid,yyvsp[-1].dlgex); ;} break; -case 113: -#line 1072 "./parser.y" -{ yyval.dlgex=dialogex_font(yyvsp[0].fntid,yyvsp[-1].dlgex); } + + case 114: +#line 1072 "parser.y" + { yyval.dlgex=dialogex_font(yyvsp[0].fntid,yyvsp[-1].dlgex); ;} break; -case 114: -#line 1073 "./parser.y" -{ yyval.dlgex=dialogex_class(yyvsp[0].nid,yyvsp[-2].dlgex); } + + case 115: +#line 1073 "parser.y" + { yyval.dlgex=dialogex_class(yyvsp[0].nid,yyvsp[-2].dlgex); ;} break; -case 115: -#line 1074 "./parser.y" -{ yyval.dlgex=dialogex_menu(yyvsp[0].nid,yyvsp[-2].dlgex); } + + case 116: +#line 1074 "parser.y" + { yyval.dlgex=dialogex_menu(yyvsp[0].nid,yyvsp[-2].dlgex); ;} break; -case 116: -#line 1075 "./parser.y" -{ yyval.dlgex=dialogex_language(yyvsp[0].lan,yyvsp[-1].dlgex); } + + case 117: +#line 1075 "parser.y" + { yyval.dlgex=dialogex_language(yyvsp[0].lan,yyvsp[-1].dlgex); ;} break; -case 117: -#line 1076 "./parser.y" -{ yyval.dlgex=dialogex_characteristics(yyvsp[0].chars,yyvsp[-1].dlgex); } + + case 118: +#line 1076 "parser.y" + { yyval.dlgex=dialogex_characteristics(yyvsp[0].chars,yyvsp[-1].dlgex); ;} break; -case 118: -#line 1077 "./parser.y" -{ yyval.dlgex=dialogex_version(yyvsp[0].ver,yyvsp[-1].dlgex); } + + case 119: +#line 1077 "parser.y" + { yyval.dlgex=dialogex_version(yyvsp[0].ver,yyvsp[-1].dlgex); ;} break; -case 119: -#line 1080 "./parser.y" -{ yyval.ctl = NULL; } + + case 120: +#line 1080 "parser.y" + { yyval.ctl = NULL; ;} break; -case 120: -#line 1081 "./parser.y" -{ yyval.ctl=ins_ctrl(-1, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 121: +#line 1081 "parser.y" + { yyval.ctl=ins_ctrl(-1, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 121: -#line 1082 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_EDIT, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 122: +#line 1082 "parser.y" + { yyval.ctl=ins_ctrl(CT_EDIT, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 122: -#line 1083 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_LISTBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 123: +#line 1083 "parser.y" + { yyval.ctl=ins_ctrl(CT_LISTBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 123: -#line 1084 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_COMBOBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 124: +#line 1084 "parser.y" + { yyval.ctl=ins_ctrl(CT_COMBOBOX, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 124: -#line 1085 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_SCROLLBAR, 0, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 125: +#line 1085 "parser.y" + { yyval.ctl=ins_ctrl(CT_SCROLLBAR, 0, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 125: -#line 1086 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_CHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 126: +#line 1086 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_CHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 126: -#line 1087 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_DEFPUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 127: +#line 1087 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_DEFPUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 127: -#line 1088 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_GROUPBOX, yyvsp[0].ctl, yyvsp[-2].ctl);} + + case 128: +#line 1088 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_GROUPBOX, yyvsp[0].ctl, yyvsp[-2].ctl);;} break; -case 128: -#line 1089 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_PUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 129: +#line 1089 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_PUSHBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 129: -#line 1091 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_RADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 130: +#line 1091 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_RADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 130: -#line 1092 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTO3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 131: +#line 1092 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTO3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 131: -#line 1093 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 132: +#line 1093 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_3STATE, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 132: -#line 1094 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTOCHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 133: +#line 1094 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTOCHECKBOX, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 133: -#line 1095 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTORADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 134: +#line 1095 "parser.y" + { yyval.ctl=ins_ctrl(CT_BUTTON, BS_AUTORADIOBUTTON, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 134: -#line 1096 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_LEFT, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 135: +#line 1096 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_LEFT, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 135: -#line 1097 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_CENTER, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 136: +#line 1097 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_CENTER, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 136: -#line 1098 "./parser.y" -{ yyval.ctl=ins_ctrl(CT_STATIC, SS_RIGHT, yyvsp[0].ctl, yyvsp[-2].ctl); } + + case 137: +#line 1098 "parser.y" + { yyval.ctl=ins_ctrl(CT_STATIC, SS_RIGHT, yyvsp[0].ctl, yyvsp[-2].ctl); ;} break; -case 137: -#line 1100 "./parser.y" -{ + + case 138: +#line 1100 "parser.y" + { yyvsp[0].ctl->title = yyvsp[-7].nid; yyvsp[0].ctl->id = yyvsp[-5].num; yyvsp[0].ctl->x = yyvsp[-3].num; yyvsp[0].ctl->y = yyvsp[-1].num; yyval.ctl = ins_ctrl(CT_STATIC, SS_ICON, yyvsp[0].ctl, yyvsp[-9].ctl); - } + ;} break; -case 138: -#line 1111 "./parser.y" -{ + + case 139: +#line 1111 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = yyvsp[-18].nid; yyval.ctl->id = yyvsp[-16].num; @@ -2711,11 +3101,12 @@ case 138: free(yyvsp[-1].iptr); } yyval.ctl->extra = yyvsp[0].raw; - } + ;} break; -case 139: -#line 1135 "./parser.y" -{ + + case 140: +#line 1135 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = yyvsp[-15].nid; yyval.ctl->id = yyvsp[-13].num; @@ -2727,11 +3118,12 @@ case 139: yyval.ctl->width = yyvsp[-3].num; yyval.ctl->height = yyvsp[-1].num; yyval.ctl->extra = yyvsp[0].raw; - } + ;} break; -case 140: -#line 1151 "./parser.y" -{ + + case 141: +#line 1151 "parser.y" + { yyval.ctl=new_control(); yyval.ctl->title = new_name_id(); yyval.ctl->title->type = name_str; @@ -2755,11 +3147,12 @@ case 140: } yyval.ctl->extra = yyvsp[0].raw; - } + ;} break; -case 141: -#line 1179 "./parser.y" -{ + + case 142: +#line 1179 "parser.y" + { yyval.ctl = new_control(); yyval.ctl->id = yyvsp[-11].num; yyval.ctl->x = yyvsp[-9].num; @@ -2779,39 +3172,47 @@ case 141: free(yyvsp[-2].styles); } yyval.ctl->extra = yyvsp[0].raw; - } + ;} break; -case 142: -#line 1202 "./parser.y" -{ yyval.raw = NULL; } + + case 143: +#line 1202 "parser.y" + { yyval.raw = NULL; ;} break; -case 143: -#line 1203 "./parser.y" -{ yyval.raw = yyvsp[0].raw; } + + case 144: +#line 1203 "parser.y" + { yyval.raw = yyvsp[0].raw; ;} break; -case 144: -#line 1206 "./parser.y" -{ yyval.iptr = NULL; } + + case 145: +#line 1206 "parser.y" + { yyval.iptr = NULL; ;} break; -case 145: -#line 1207 "./parser.y" -{ yyval.iptr = new_int(yyvsp[0].num); } + + case 146: +#line 1207 "parser.y" + { yyval.iptr = new_int(yyvsp[0].num); ;} break; -case 146: -#line 1211 "./parser.y" -{ yyval.fntid = new_font_id(yyvsp[-7].num, yyvsp[-5].str, yyvsp[-3].num, yyvsp[-1].num); } + + case 147: +#line 1211 "parser.y" + { yyval.fntid = new_font_id(yyvsp[-7].num, yyvsp[-5].str, yyvsp[-3].num, yyvsp[-1].num); ;} break; -case 147: -#line 1218 "./parser.y" -{ yyval.fntid = NULL; } + + case 148: +#line 1218 "parser.y" + { yyval.fntid = NULL; ;} break; -case 148: -#line 1219 "./parser.y" -{ yyval.fntid = NULL; } + + case 149: +#line 1219 "parser.y" + { yyval.fntid = NULL; ;} break; -case 149: -#line 1223 "./parser.y" -{ + + case 150: +#line 1223 "parser.y" + { if(!yyvsp[0].menitm) yyerror("Menu must contain items"); yyval.men = new_menu(); @@ -2830,19 +3231,22 @@ case 149: } if(!yyval.men->lvc.language) yyval.men->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 150: -#line 1246 "./parser.y" -{ yyval.menitm = yyvsp[-1].menitm; } + + case 151: +#line 1246 "parser.y" + { yyval.menitm = yyvsp[-1].menitm; ;} break; -case 151: -#line 1250 "./parser.y" -{yyval.menitm = NULL;} + + case 152: +#line 1250 "parser.y" + {yyval.menitm = NULL;;} break; -case 152: -#line 1251 "./parser.y" -{ + + case 153: +#line 1251 "parser.y" + { yyval.menitm=new_menu_item(); yyval.menitm->prev = yyvsp[-5].menitm; if(yyvsp[-5].menitm) @@ -2850,59 +3254,69 @@ case 152: yyval.menitm->id = yyvsp[-1].num; yyval.menitm->state = yyvsp[0].num; yyval.menitm->name = yyvsp[-3].str; - } + ;} break; -case 153: -#line 1260 "./parser.y" -{ + + case 154: +#line 1260 "parser.y" + { yyval.menitm=new_menu_item(); yyval.menitm->prev = yyvsp[-2].menitm; if(yyvsp[-2].menitm) yyvsp[-2].menitm->next = yyval.menitm; - } + ;} break; -case 154: -#line 1266 "./parser.y" -{ + + case 155: +#line 1266 "parser.y" + { yyval.menitm = new_menu_item(); yyval.menitm->prev = yyvsp[-4].menitm; if(yyvsp[-4].menitm) yyvsp[-4].menitm->next = yyval.menitm; yyval.menitm->popup = get_item_head(yyvsp[0].menitm); yyval.menitm->name = yyvsp[-2].str; - } + ;} break; -case 155: -#line 1285 "./parser.y" -{ yyval.num = 0; } + + case 156: +#line 1285 "parser.y" + { yyval.num = 0; ;} break; -case 156: -#line 1286 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_CHECKED; } + + case 157: +#line 1286 "parser.y" + { yyval.num = yyvsp[0].num | MF_CHECKED; ;} break; -case 157: -#line 1287 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_GRAYED; } + + case 158: +#line 1287 "parser.y" + { yyval.num = yyvsp[0].num | MF_GRAYED; ;} break; -case 158: -#line 1288 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_HELP; } + + case 159: +#line 1288 "parser.y" + { yyval.num = yyvsp[0].num | MF_HELP; ;} break; -case 159: -#line 1289 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_DISABLED; } + + case 160: +#line 1289 "parser.y" + { yyval.num = yyvsp[0].num | MF_DISABLED; ;} break; -case 160: -#line 1290 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_MENUBARBREAK; } + + case 161: +#line 1290 "parser.y" + { yyval.num = yyvsp[0].num | MF_MENUBARBREAK; ;} break; -case 161: -#line 1291 "./parser.y" -{ yyval.num = yyvsp[0].num | MF_MENUBREAK; } + + case 162: +#line 1291 "parser.y" + { yyval.num = yyvsp[0].num | MF_MENUBREAK; ;} break; -case 162: -#line 1295 "./parser.y" -{ + + case 163: +#line 1295 "parser.y" + { if(!win32) yywarning("MENUEX not supported in 16-bit mode"); if(!yyvsp[0].menexitm) @@ -2923,19 +3337,22 @@ case 162: } if(!yyval.menex->lvc.language) yyval.menex->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 163: -#line 1320 "./parser.y" -{ yyval.menexitm = yyvsp[-1].menexitm; } + + case 164: +#line 1320 "parser.y" + { yyval.menexitm = yyvsp[-1].menexitm; ;} break; -case 164: -#line 1324 "./parser.y" -{yyval.menexitm = NULL; } + + case 165: +#line 1324 "parser.y" + {yyval.menexitm = NULL; ;} break; -case 165: -#line 1325 "./parser.y" -{ + + case 166: +#line 1325 "parser.y" + { yyval.menexitm = new_menuex_item(); yyval.menexitm->prev = yyvsp[-3].menexitm; if(yyvsp[-3].menexitm) @@ -2950,20 +3367,22 @@ case 165: yyval.menexitm->gotstate = yyvsp[0].exopt->gotstate; yyval.menexitm->gothelpid = yyvsp[0].exopt->gothelpid; free(yyvsp[0].exopt); - } + ;} break; -case 166: -#line 1341 "./parser.y" -{ + + case 167: +#line 1341 "parser.y" + { yyval.menexitm = new_menuex_item(); yyval.menexitm->prev = yyvsp[-2].menexitm; if(yyvsp[-2].menexitm) yyvsp[-2].menexitm->next = yyval.menexitm; - } + ;} break; -case 167: -#line 1347 "./parser.y" -{ + + case 168: +#line 1347 "parser.y" + { yyval.menexitm = new_menuex_item(); yyval.menexitm->prev = yyvsp[-4].menexitm; if(yyvsp[-4].menexitm) @@ -2979,75 +3398,84 @@ case 167: yyval.menexitm->gotstate = yyvsp[-1].exopt->gotstate; yyval.menexitm->gothelpid = yyvsp[-1].exopt->gothelpid; free(yyvsp[-1].exopt); - } + ;} break; -case 168: -#line 1367 "./parser.y" -{ yyval.exopt = new_itemex_opt(0, 0, 0, 0); } + + case 169: +#line 1367 "parser.y" + { yyval.exopt = new_itemex_opt(0, 0, 0, 0); ;} break; -case 169: -#line 1368 "./parser.y" -{ + + case 170: +#line 1368 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[0].num, 0, 0, 0); yyval.exopt->gotid = TRUE; - } + ;} break; -case 170: -#line 1372 "./parser.y" -{ + + case 171: +#line 1372 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[-3].iptr ? *(yyvsp[-3].iptr) : 0, yyvsp[-1].iptr ? *(yyvsp[-1].iptr) : 0, yyvsp[0].num, 0); yyval.exopt->gotid = TRUE; yyval.exopt->gottype = TRUE; yyval.exopt->gotstate = TRUE; if(yyvsp[-3].iptr) free(yyvsp[-3].iptr); if(yyvsp[-1].iptr) free(yyvsp[-1].iptr); - } + ;} break; -case 171: -#line 1380 "./parser.y" -{ + + case 172: +#line 1380 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[-4].iptr ? *(yyvsp[-4].iptr) : 0, yyvsp[-2].iptr ? *(yyvsp[-2].iptr) : 0, yyvsp[0].num, 0); yyval.exopt->gotid = TRUE; yyval.exopt->gottype = TRUE; yyval.exopt->gotstate = TRUE; if(yyvsp[-4].iptr) free(yyvsp[-4].iptr); if(yyvsp[-2].iptr) free(yyvsp[-2].iptr); - } + ;} break; -case 172: -#line 1391 "./parser.y" -{ yyval.exopt = new_itemex_opt(0, 0, 0, 0); } + + case 173: +#line 1391 "parser.y" + { yyval.exopt = new_itemex_opt(0, 0, 0, 0); ;} break; -case 173: -#line 1392 "./parser.y" -{ + + case 174: +#line 1392 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[0].num, 0, 0, 0); yyval.exopt->gotid = TRUE; - } + ;} break; -case 174: -#line 1396 "./parser.y" -{ + + case 175: +#line 1396 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[-2].iptr ? *(yyvsp[-2].iptr) : 0, yyvsp[0].num, 0, 0); if(yyvsp[-2].iptr) free(yyvsp[-2].iptr); yyval.exopt->gotid = TRUE; yyval.exopt->gottype = TRUE; - } + ;} break; -case 175: -#line 1402 "./parser.y" -{ + + case 176: +#line 1402 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[-4].iptr ? *(yyvsp[-4].iptr) : 0, yyvsp[-2].iptr ? *(yyvsp[-2].iptr) : 0, yyvsp[0].num, 0); if(yyvsp[-4].iptr) free(yyvsp[-4].iptr); if(yyvsp[-2].iptr) free(yyvsp[-2].iptr); yyval.exopt->gotid = TRUE; yyval.exopt->gottype = TRUE; yyval.exopt->gotstate = TRUE; - } + ;} break; -case 176: -#line 1410 "./parser.y" -{ + + case 177: +#line 1410 "parser.y" + { yyval.exopt = new_itemex_opt(yyvsp[-6].iptr ? *(yyvsp[-6].iptr) : 0, yyvsp[-4].iptr ? *(yyvsp[-4].iptr) : 0, yyvsp[-2].iptr ? *(yyvsp[-2].iptr) : 0, yyvsp[0].num); if(yyvsp[-6].iptr) free(yyvsp[-6].iptr); if(yyvsp[-4].iptr) free(yyvsp[-4].iptr); @@ -3056,11 +3484,12 @@ case 176: yyval.exopt->gottype = TRUE; yyval.exopt->gotstate = TRUE; yyval.exopt->gothelpid = TRUE; - } + ;} break; -case 177: -#line 1430 "./parser.y" -{ + + case 178: +#line 1430 "parser.y" + { if(!yyvsp[-1].stt) { yyerror("Stringtable must have at least one entry"); @@ -3097,11 +3526,12 @@ case 177: } yyval.stt = tagstt; - } + ;} break; -case 178: -#line 1471 "./parser.y" -{ + + case 179: +#line 1471 "parser.y" + { if((tagstt = find_stringtable(yyvsp[0].lvc)) == NULL) tagstt = new_stringtable(yyvsp[0].lvc); tagstt_memopt = yyvsp[-1].iptr; @@ -3109,15 +3539,17 @@ case 178: tagstt_characts = yyvsp[0].lvc->characts; if(yyvsp[0].lvc) free(yyvsp[0].lvc); - } + ;} break; -case 179: -#line 1482 "./parser.y" -{ yyval.stt = NULL; } + + case 180: +#line 1482 "parser.y" + { yyval.stt = NULL; ;} break; -case 180: -#line 1483 "./parser.y" -{ + + case 181: +#line 1483 "parser.y" + { int i; assert(tagstt != NULL); if(yyvsp[-2].num > 65535 || yyvsp[-2].num < -32768) @@ -3147,11 +3579,12 @@ case 180: if(win32 && yyvsp[0].str->size > 65534) /* Hmm..., does this happen? */ yyerror("Stringtable entry more than 65534 characters (probably something else that went wrong)"); yyval.stt = tagstt; - } + ;} break; -case 183: -#line 1523 "./parser.y" -{ + + case 184: +#line 1523 "parser.y" + { yyval.veri = yyvsp[-3].veri; if(yyvsp[-4].iptr) { @@ -3163,15 +3596,17 @@ case 183: yyval.veri->blocks = get_ver_block_head(yyvsp[-1].blk); /* Set language; there is no version or characteristics */ yyval.veri->lvc.language = dup_language(currentlanguage); - } + ;} break; -case 184: -#line 1539 "./parser.y" -{ yyval.veri = new_versioninfo(); } + + case 185: +#line 1539 "parser.y" + { yyval.veri = new_versioninfo(); ;} break; -case 185: -#line 1540 "./parser.y" -{ + + case 186: +#line 1540 "parser.y" + { if(yyvsp[-8].veri->gotit.fv) yyerror("FILEVERSION already defined"); yyval.veri = yyvsp[-8].veri; @@ -3180,11 +3615,12 @@ case 185: yyval.veri->filever_min1 = yyvsp[-2].num; yyval.veri->filever_min2 = yyvsp[0].num; yyval.veri->gotit.fv = 1; - } + ;} break; -case 186: -#line 1550 "./parser.y" -{ + + case 187: +#line 1550 "parser.y" + { if(yyvsp[-8].veri->gotit.pv) yyerror("PRODUCTVERSION already defined"); yyval.veri = yyvsp[-8].veri; @@ -3193,129 +3629,145 @@ case 186: yyval.veri->prodver_min1 = yyvsp[-2].num; yyval.veri->prodver_min2 = yyvsp[0].num; yyval.veri->gotit.pv = 1; - } + ;} break; -case 187: -#line 1560 "./parser.y" -{ + + case 188: +#line 1560 "parser.y" + { if(yyvsp[-2].veri->gotit.ff) yyerror("FILEFLAGS already defined"); yyval.veri = yyvsp[-2].veri; yyval.veri->fileflags = yyvsp[0].num; yyval.veri->gotit.ff = 1; - } + ;} break; -case 188: -#line 1567 "./parser.y" -{ + + case 189: +#line 1567 "parser.y" + { if(yyvsp[-2].veri->gotit.ffm) yyerror("FILEFLAGSMASK already defined"); yyval.veri = yyvsp[-2].veri; yyval.veri->fileflagsmask = yyvsp[0].num; yyval.veri->gotit.ffm = 1; - } + ;} break; -case 189: -#line 1574 "./parser.y" -{ + + case 190: +#line 1574 "parser.y" + { if(yyvsp[-2].veri->gotit.fo) yyerror("FILEOS already defined"); yyval.veri = yyvsp[-2].veri; yyval.veri->fileos = yyvsp[0].num; yyval.veri->gotit.fo = 1; - } + ;} break; -case 190: -#line 1581 "./parser.y" -{ + + case 191: +#line 1581 "parser.y" + { if(yyvsp[-2].veri->gotit.ft) yyerror("FILETYPE already defined"); yyval.veri = yyvsp[-2].veri; yyval.veri->filetype = yyvsp[0].num; yyval.veri->gotit.ft = 1; - } + ;} break; -case 191: -#line 1588 "./parser.y" -{ + + case 192: +#line 1588 "parser.y" + { if(yyvsp[-2].veri->gotit.fst) yyerror("FILESUBTYPE already defined"); yyval.veri = yyvsp[-2].veri; yyval.veri->filesubtype = yyvsp[0].num; yyval.veri->gotit.fst = 1; - } + ;} break; -case 192: -#line 1598 "./parser.y" -{ yyval.blk = NULL; } + + case 193: +#line 1598 "parser.y" + { yyval.blk = NULL; ;} break; -case 193: -#line 1599 "./parser.y" -{ + + case 194: +#line 1599 "parser.y" + { yyval.blk = yyvsp[0].blk; yyval.blk->prev = yyvsp[-1].blk; if(yyvsp[-1].blk) yyvsp[-1].blk->next = yyval.blk; - } + ;} break; -case 194: -#line 1608 "./parser.y" -{ + + case 195: +#line 1608 "parser.y" + { yyval.blk = new_ver_block(); yyval.blk->name = yyvsp[-3].str; yyval.blk->values = get_ver_value_head(yyvsp[-1].val); - } + ;} break; -case 195: -#line 1616 "./parser.y" -{ yyval.val = NULL; } + + case 196: +#line 1616 "parser.y" + { yyval.val = NULL; ;} break; -case 196: -#line 1617 "./parser.y" -{ + + case 197: +#line 1617 "parser.y" + { yyval.val = yyvsp[0].val; yyval.val->prev = yyvsp[-1].val; if(yyvsp[-1].val) yyvsp[-1].val->next = yyval.val; - } + ;} break; -case 197: -#line 1626 "./parser.y" -{ + + case 198: +#line 1626 "parser.y" + { yyval.val = new_ver_value(); yyval.val->type = val_block; yyval.val->value.block = yyvsp[0].blk; - } + ;} break; -case 198: -#line 1631 "./parser.y" -{ + + case 199: +#line 1631 "parser.y" + { yyval.val = new_ver_value(); yyval.val->type = val_str; yyval.val->key = yyvsp[-2].str; yyval.val->value.str = yyvsp[0].str; - } + ;} break; -case 199: -#line 1637 "./parser.y" -{ + + case 200: +#line 1637 "parser.y" + { yyval.val = new_ver_value(); yyval.val->type = val_words; yyval.val->key = yyvsp[-2].str; yyval.val->value.words = yyvsp[0].verw; - } + ;} break; -case 200: -#line 1646 "./parser.y" -{ yyval.verw = new_ver_words(yyvsp[0].num); } + + case 201: +#line 1646 "parser.y" + { yyval.verw = new_ver_words(yyvsp[0].num); ;} break; -case 201: -#line 1647 "./parser.y" -{ yyval.verw = add_ver_words(yyvsp[-2].verw, yyvsp[0].num); } + + case 202: +#line 1647 "parser.y" + { yyval.verw = add_ver_words(yyvsp[-2].verw, yyvsp[0].num); ;} break; -case 202: -#line 1651 "./parser.y" -{ + + case 203: +#line 1651 "parser.y" + { int nitems; toolbar_item_t *items = get_tlbr_buttons_head(yyvsp[-1].tlbarItems, &nitems); yyval.tlbar = new_toolbar(yyvsp[-6].num, yyvsp[-4].num, items, nitems); @@ -3337,35 +3789,40 @@ case 202: { yyval.tlbar->lvc.language = dup_language(currentlanguage); } - } + ;} break; -case 203: -#line 1677 "./parser.y" -{ yyval.tlbarItems = NULL; } + + case 204: +#line 1677 "parser.y" + { yyval.tlbarItems = NULL; ;} break; -case 204: -#line 1678 "./parser.y" -{ + + case 205: +#line 1678 "parser.y" + { toolbar_item_t *idrec = new_toolbar_item(); idrec->id = yyvsp[0].num; yyval.tlbarItems = ins_tlbr_button(yyvsp[-2].tlbarItems, idrec); - } + ;} break; -case 205: -#line 1683 "./parser.y" -{ + + case 206: +#line 1683 "parser.y" + { toolbar_item_t *idrec = new_toolbar_item(); idrec->id = 0; yyval.tlbarItems = ins_tlbr_button(yyvsp[-1].tlbarItems, idrec); - } + ;} break; -case 206: -#line 1692 "./parser.y" -{ yyval.iptr = NULL; } + + case 207: +#line 1692 "parser.y" + { yyval.iptr = NULL; ;} break; -case 207: -#line 1693 "./parser.y" -{ + + case 208: +#line 1693 "parser.y" + { if(yyvsp[-1].iptr) { *(yyvsp[-1].iptr) |= *(yyvsp[0].iptr); @@ -3374,11 +3831,12 @@ case 207: } else yyval.iptr = yyvsp[0].iptr; - } + ;} break; -case 208: -#line 1703 "./parser.y" -{ + + case 209: +#line 1703 "parser.y" + { if(yyvsp[-1].iptr) { *(yyvsp[-1].iptr) &= *(yyvsp[0].iptr); @@ -3390,91 +3848,106 @@ case 208: *yyvsp[0].iptr &= WRC_MO_MOVEABLE | WRC_MO_DISCARDABLE | WRC_MO_PURE; yyval.iptr = yyvsp[0].iptr; } - } + ;} break; -case 209: -#line 1718 "./parser.y" -{ yyval.iptr = new_int(WRC_MO_PRELOAD); } + + case 210: +#line 1718 "parser.y" + { yyval.iptr = new_int(WRC_MO_PRELOAD); ;} break; -case 210: -#line 1719 "./parser.y" -{ yyval.iptr = new_int(WRC_MO_MOVEABLE); } + + case 211: +#line 1719 "parser.y" + { yyval.iptr = new_int(WRC_MO_MOVEABLE); ;} break; -case 211: -#line 1720 "./parser.y" -{ yyval.iptr = new_int(WRC_MO_DISCARDABLE); } + + case 212: +#line 1720 "parser.y" + { yyval.iptr = new_int(WRC_MO_DISCARDABLE); ;} break; -case 212: -#line 1721 "./parser.y" -{ yyval.iptr = new_int(WRC_MO_PURE); } + + case 213: +#line 1721 "parser.y" + { yyval.iptr = new_int(WRC_MO_PURE); ;} break; -case 213: -#line 1724 "./parser.y" -{ yyval.iptr = new_int(~WRC_MO_PRELOAD); } + + case 214: +#line 1724 "parser.y" + { yyval.iptr = new_int(~WRC_MO_PRELOAD); ;} break; -case 214: -#line 1725 "./parser.y" -{ yyval.iptr = new_int(~WRC_MO_MOVEABLE); } + + case 215: +#line 1725 "parser.y" + { yyval.iptr = new_int(~WRC_MO_MOVEABLE); ;} break; -case 215: -#line 1726 "./parser.y" -{ yyval.iptr = new_int(~WRC_MO_PURE); } + + case 216: +#line 1726 "parser.y" + { yyval.iptr = new_int(~WRC_MO_PURE); ;} break; -case 216: -#line 1730 "./parser.y" -{ yyval.lvc = new_lvc(); } + + case 217: +#line 1730 "parser.y" + { yyval.lvc = new_lvc(); ;} break; -case 217: -#line 1731 "./parser.y" -{ + + case 218: +#line 1731 "parser.y" + { if(!win32) yywarning("LANGUAGE not supported in 16-bit mode"); if(yyvsp[-1].lvc->language) yyerror("Language already defined"); yyval.lvc = yyvsp[-1].lvc; yyvsp[-1].lvc->language = yyvsp[0].lan; - } + ;} break; -case 218: -#line 1739 "./parser.y" -{ + + case 219: +#line 1739 "parser.y" + { if(!win32) yywarning("CHARACTERISTICS not supported in 16-bit mode"); if(yyvsp[-1].lvc->characts) yyerror("Characteristics already defined"); yyval.lvc = yyvsp[-1].lvc; yyvsp[-1].lvc->characts = yyvsp[0].chars; - } + ;} break; -case 219: -#line 1747 "./parser.y" -{ + + case 220: +#line 1747 "parser.y" + { if(!win32) yywarning("VERSION not supported in 16-bit mode"); if(yyvsp[-1].lvc->version) yyerror("Version already defined"); yyval.lvc = yyvsp[-1].lvc; yyvsp[-1].lvc->version = yyvsp[0].ver; - } + ;} break; -case 220: -#line 1765 "./parser.y" -{ yyval.lan = new_language(yyvsp[-2].num, yyvsp[0].num); + + case 221: +#line 1765 "parser.y" + { yyval.lan = new_language(yyvsp[-2].num, yyvsp[0].num); if (get_language_codepage(yyvsp[-2].num, yyvsp[0].num) == -1) yyerror( "Language %04x is not supported", (yyvsp[0].num<<10) + yyvsp[-2].num); - } + ;} break; -case 221: -#line 1772 "./parser.y" -{ yyval.chars = new_characts(yyvsp[0].num); } + + case 222: +#line 1772 "parser.y" + { yyval.chars = new_characts(yyvsp[0].num); ;} break; -case 222: -#line 1776 "./parser.y" -{ yyval.ver = new_version(yyvsp[0].num); } + + case 223: +#line 1776 "parser.y" + { yyval.ver = new_version(yyvsp[0].num); ;} break; -case 223: -#line 1780 "./parser.y" -{ + + case 224: +#line 1780 "parser.y" + { if(yyvsp[-3].lvc) { yyvsp[-1].raw->lvc = *(yyvsp[-3].lvc); @@ -3485,162 +3958,183 @@ case 223: yyvsp[-1].raw->lvc.language = dup_language(currentlanguage); yyval.raw = yyvsp[-1].raw; - } + ;} break; -case 224: -#line 1795 "./parser.y" -{ yyval.raw = yyvsp[0].raw; } - break; -case 225: -#line 1796 "./parser.y" -{ yyval.raw = int2raw_data(yyvsp[0].num); } - break; -case 226: -#line 1797 "./parser.y" -{ yyval.raw = int2raw_data(-(yyvsp[0].num)); } - break; -case 227: -#line 1798 "./parser.y" -{ yyval.raw = long2raw_data(yyvsp[0].num); } - break; -case 228: -#line 1799 "./parser.y" -{ yyval.raw = long2raw_data(-(yyvsp[0].num)); } - break; -case 229: -#line 1800 "./parser.y" -{ yyval.raw = str2raw_data(yyvsp[0].str); } - break; -case 230: -#line 1801 "./parser.y" -{ yyval.raw = merge_raw_data(yyvsp[-2].raw, yyvsp[0].raw); free(yyvsp[0].raw->data); free(yyvsp[0].raw); } - break; -case 231: -#line 1802 "./parser.y" -{ yyval.raw = merge_raw_data_int(yyvsp[-2].raw, yyvsp[0].num); } - break; -case 232: -#line 1803 "./parser.y" -{ yyval.raw = merge_raw_data_int(yyvsp[-3].raw, -(yyvsp[0].num)); } - break; -case 233: -#line 1804 "./parser.y" -{ yyval.raw = merge_raw_data_long(yyvsp[-2].raw, yyvsp[0].num); } - break; -case 234: -#line 1805 "./parser.y" -{ yyval.raw = merge_raw_data_long(yyvsp[-3].raw, -(yyvsp[0].num)); } - break; -case 235: -#line 1806 "./parser.y" -{ yyval.raw = merge_raw_data_str(yyvsp[-2].raw, yyvsp[0].str); } - break; -case 236: -#line 1810 "./parser.y" -{ yyval.raw = load_file(yyvsp[0].str,dup_language(currentlanguage)); } - break; -case 237: -#line 1811 "./parser.y" -{ yyval.raw = yyvsp[0].raw; } - break; -case 238: -#line 1818 "./parser.y" -{ yyval.iptr = 0; } - break; -case 239: -#line 1819 "./parser.y" -{ yyval.iptr = new_int(yyvsp[0].num); } - break; -case 240: -#line 1823 "./parser.y" -{ yyval.num = (yyvsp[0].num); } - break; -case 241: -#line 1826 "./parser.y" -{ yyval.num = (yyvsp[-2].num) + (yyvsp[0].num); } - break; -case 242: -#line 1827 "./parser.y" -{ yyval.num = (yyvsp[-2].num) - (yyvsp[0].num); } - break; -case 243: -#line 1828 "./parser.y" -{ yyval.num = (yyvsp[-2].num) | (yyvsp[0].num); } - break; -case 244: -#line 1829 "./parser.y" -{ yyval.num = (yyvsp[-2].num) & (yyvsp[0].num); } - break; -case 245: -#line 1830 "./parser.y" -{ yyval.num = (yyvsp[-2].num) * (yyvsp[0].num); } - break; -case 246: -#line 1831 "./parser.y" -{ yyval.num = (yyvsp[-2].num) / (yyvsp[0].num); } - break; -case 247: -#line 1832 "./parser.y" -{ yyval.num = (yyvsp[-2].num) ^ (yyvsp[0].num); } - break; -case 248: -#line 1833 "./parser.y" -{ yyval.num = ~(yyvsp[0].num); } - break; -case 249: -#line 1834 "./parser.y" -{ yyval.num = -(yyvsp[0].num); } - break; -case 250: -#line 1835 "./parser.y" -{ yyval.num = yyvsp[0].num; } - break; -case 251: -#line 1836 "./parser.y" -{ yyval.num = yyvsp[-1].num; } - break; -case 252: -#line 1837 "./parser.y" -{ yyval.num = yyvsp[0].num; } - break; -case 253: -#line 1838 "./parser.y" -{ yyval.num = ~(yyvsp[0].num); } - break; -case 254: -#line 1841 "./parser.y" -{ yyval.num = yyvsp[0].num; } - break; -case 255: -#line 1842 "./parser.y" -{ yyval.num = yyvsp[0].num; } - break; -} -#line 705 "/usr/share/bison/bison.simple" + case 225: +#line 1795 "parser.y" + { yyval.raw = yyvsp[0].raw; ;} + break; + case 226: +#line 1796 "parser.y" + { yyval.raw = int2raw_data(yyvsp[0].num); ;} + break; + + case 227: +#line 1797 "parser.y" + { yyval.raw = int2raw_data(-(yyvsp[0].num)); ;} + break; + + case 228: +#line 1798 "parser.y" + { yyval.raw = long2raw_data(yyvsp[0].num); ;} + break; + + case 229: +#line 1799 "parser.y" + { yyval.raw = long2raw_data(-(yyvsp[0].num)); ;} + break; + + case 230: +#line 1800 "parser.y" + { yyval.raw = str2raw_data(yyvsp[0].str); ;} + break; + + case 231: +#line 1801 "parser.y" + { yyval.raw = merge_raw_data(yyvsp[-2].raw, yyvsp[0].raw); free(yyvsp[0].raw->data); free(yyvsp[0].raw); ;} + break; + + case 232: +#line 1802 "parser.y" + { yyval.raw = merge_raw_data_int(yyvsp[-2].raw, yyvsp[0].num); ;} + break; + + case 233: +#line 1803 "parser.y" + { yyval.raw = merge_raw_data_int(yyvsp[-3].raw, -(yyvsp[0].num)); ;} + break; + + case 234: +#line 1804 "parser.y" + { yyval.raw = merge_raw_data_long(yyvsp[-2].raw, yyvsp[0].num); ;} + break; + + case 235: +#line 1805 "parser.y" + { yyval.raw = merge_raw_data_long(yyvsp[-3].raw, -(yyvsp[0].num)); ;} + break; + + case 236: +#line 1806 "parser.y" + { yyval.raw = merge_raw_data_str(yyvsp[-2].raw, yyvsp[0].str); ;} + break; + + case 237: +#line 1810 "parser.y" + { yyval.raw = load_file(yyvsp[0].str,dup_language(currentlanguage)); ;} + break; + + case 238: +#line 1811 "parser.y" + { yyval.raw = yyvsp[0].raw; ;} + break; + + case 239: +#line 1818 "parser.y" + { yyval.iptr = 0; ;} + break; + + case 240: +#line 1819 "parser.y" + { yyval.iptr = new_int(yyvsp[0].num); ;} + break; + + case 241: +#line 1823 "parser.y" + { yyval.num = (yyvsp[0].num); ;} + break; + + case 242: +#line 1826 "parser.y" + { yyval.num = (yyvsp[-2].num) + (yyvsp[0].num); ;} + break; + + case 243: +#line 1827 "parser.y" + { yyval.num = (yyvsp[-2].num) - (yyvsp[0].num); ;} + break; + + case 244: +#line 1828 "parser.y" + { yyval.num = (yyvsp[-2].num) | (yyvsp[0].num); ;} + break; + + case 245: +#line 1829 "parser.y" + { yyval.num = (yyvsp[-2].num) & (yyvsp[0].num); ;} + break; + + case 246: +#line 1830 "parser.y" + { yyval.num = (yyvsp[-2].num) * (yyvsp[0].num); ;} + break; + + case 247: +#line 1831 "parser.y" + { yyval.num = (yyvsp[-2].num) / (yyvsp[0].num); ;} + break; + + case 248: +#line 1832 "parser.y" + { yyval.num = (yyvsp[-2].num) ^ (yyvsp[0].num); ;} + break; + + case 249: +#line 1833 "parser.y" + { yyval.num = ~(yyvsp[0].num); ;} + break; + + case 250: +#line 1834 "parser.y" + { yyval.num = -(yyvsp[0].num); ;} + break; + + case 251: +#line 1835 "parser.y" + { yyval.num = yyvsp[0].num; ;} + break; + + case 252: +#line 1836 "parser.y" + { yyval.num = yyvsp[-1].num; ;} + break; + + case 253: +#line 1837 "parser.y" + { yyval.num = yyvsp[0].num; ;} + break; + + case 254: +#line 1838 "parser.y" + { yyval.num = ~(yyvsp[0].num); ;} + break; + + case 255: +#line 1841 "parser.y" + { yyval.num = yyvsp[0].num; ;} + break; + + case 256: +#line 1842 "parser.y" + { yyval.num = yyvsp[0].num; ;} + break; + + + } + +/* Line 999 of yacc.c. */ +#line 4129 "y.tab.c" yyvsp -= yylen; yyssp -= yylen; -#if YYLSP_NEEDED - yylsp -= yylen; -#endif -#if YYDEBUG - if (yydebug) - { - short *yyssp1 = yyss - 1; - YYFPRINTF (stderr, "state stack now"); - while (yyssp1 != yyssp) - YYFPRINTF (stderr, " %d", *++yyssp1); - YYFPRINTF (stderr, "\n"); - } -#endif + + YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; -#if YYLSP_NEEDED - *++yylsp = yyloc; -#endif + /* Now `shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule @@ -3648,11 +4142,11 @@ case 255: yyn = yyr1[yyn]; - yystate = yypgoto[yyn - YYNTBASE] + *yyssp; - if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; + if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) yystate = yytable[yystate]; else - yystate = yydefgoto[yyn - YYNTBASE]; + yystate = yydefgoto[yyn - YYNTOKENS]; goto yynewstate; @@ -3665,145 +4159,132 @@ yyerrlab: if (!yyerrstatus) { ++yynerrs; - -#ifdef YYERROR_VERBOSE +#if YYERROR_VERBOSE yyn = yypact[yystate]; - if (yyn > YYFLAG && yyn < YYLAST) + if (YYPACT_NINF < yyn && yyn < YYLAST) { YYSIZE_T yysize = 0; + int yytype = YYTRANSLATE (yychar); + const char* yyprefix; char *yymsg; - int yyx, yycount; + int yyx; - yycount = 0; /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. */ - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) - if (yycheck[yyx + yyn] == yyx) - yysize += yystrlen (yytname[yyx]) + 15, yycount++; - yysize += yystrlen ("parse error, unexpected ") + 1; - yysize += yystrlen (yytname[YYTRANSLATE (yychar)]); + int yyxbegin = yyn < 0 ? -yyn : 0; + + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yycount = 0; + + yyprefix = ", expecting "; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) + { + yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]); + yycount += 1; + if (yycount == 5) + { + yysize = 0; + break; + } + } + yysize += (sizeof ("syntax error, unexpected ") + + yystrlen (yytname[yytype])); yymsg = (char *) YYSTACK_ALLOC (yysize); if (yymsg != 0) { - char *yyp = yystpcpy (yymsg, "parse error, unexpected "); - yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]); + char *yyp = yystpcpy (yymsg, "syntax error, unexpected "); + yyp = yystpcpy (yyp, yytname[yytype]); if (yycount < 5) { - yycount = 0; - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); - yyx++) - if (yycheck[yyx + yyn] == yyx) + yyprefix = ", expecting "; + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) { - const char *yyq = ! yycount ? ", expecting " : " or "; - yyp = yystpcpy (yyp, yyq); + yyp = yystpcpy (yyp, yyprefix); yyp = yystpcpy (yyp, yytname[yyx]); - yycount++; + yyprefix = " or "; } } yyerror (yymsg); YYSTACK_FREE (yymsg); } else - yyerror ("parse error; also virtual memory exhausted"); + yyerror ("syntax error; also virtual memory exhausted"); } else -#endif /* defined (YYERROR_VERBOSE) */ - yyerror ("parse error"); +#endif /* YYERROR_VERBOSE */ + yyerror ("syntax error"); } - goto yyerrlab1; -/*--------------------------------------------------. -| yyerrlab1 -- error raised explicitly by an action | -`--------------------------------------------------*/ -yyerrlab1: + if (yyerrstatus == 3) { /* If just tried and failed to reuse lookahead token after an error, discard it. */ - /* return failure if at end of input */ + /* Return failure if at end of input. */ if (yychar == YYEOF) - YYABORT; - YYDPRINTF ((stderr, "Discarding token %d (%s).\n", - yychar, yytname[yychar1])); + { + /* Pop the error token. */ + YYPOPSTACK; + /* Pop the rest of the stack. */ + while (yyss < yyssp) + { + YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); + yydestruct (yystos[*yyssp], yyvsp); + YYPOPSTACK; + } + YYABORT; + } + + YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc); + yydestruct (yytoken, &yylval); yychar = YYEMPTY; + } /* Else will try to reuse lookahead token after shifting the error token. */ - - yyerrstatus = 3; /* Each real token shifted decrements this */ - - goto yyerrhandle; + goto yyerrlab1; -/*-------------------------------------------------------------------. -| yyerrdefault -- current state does not do anything special for the | -| error token. | -`-------------------------------------------------------------------*/ -yyerrdefault: -#if 0 - /* This is wrong; only states that explicitly want error tokens - should shift them. */ +/*----------------------------------------------------. +| yyerrlab1 -- error raised explicitly by an action. | +`----------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ - /* If its default is to accept any token, ok. Otherwise pop it. */ - yyn = yydefact[yystate]; - if (yyn) - goto yydefault; -#endif - - -/*---------------------------------------------------------------. -| yyerrpop -- pop the current state because it cannot handle the | -| error token | -`---------------------------------------------------------------*/ -yyerrpop: - if (yyssp == yyss) - YYABORT; - yyvsp--; - yystate = *--yyssp; -#if YYLSP_NEEDED - yylsp--; -#endif - -#if YYDEBUG - if (yydebug) + for (;;) { - short *yyssp1 = yyss - 1; - YYFPRINTF (stderr, "Error: state stack now"); - while (yyssp1 != yyssp) - YYFPRINTF (stderr, " %d", *++yyssp1); - YYFPRINTF (stderr, "\n"); + yyn = yypact[yystate]; + if (yyn != YYPACT_NINF) + { + yyn += YYTERROR; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + + YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); + yydestruct (yystos[yystate], yyvsp); + yyvsp--; + yystate = *--yyssp; + + YY_STACK_PRINT (yyss, yyssp); } -#endif - -/*--------------. -| yyerrhandle. | -`--------------*/ -yyerrhandle: - yyn = yypact[yystate]; - if (yyn == YYFLAG) - goto yyerrdefault; - - yyn += YYTERROR; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) - goto yyerrdefault; - - yyn = yytable[yyn]; - if (yyn < 0) - { - if (yyn == YYFLAG) - goto yyerrpop; - yyn = -yyn; - goto yyreduce; - } - else if (yyn == 0) - goto yyerrpop; if (yyn == YYFINAL) YYACCEPT; @@ -3811,9 +4292,7 @@ yyerrhandle: YYDPRINTF ((stderr, "Shifting error token, ")); *++yyvsp = yylval; -#if YYLSP_NEEDED - *++yylsp = yylloc; -#endif + yystate = yyn; goto yynewstate; @@ -3833,13 +4312,15 @@ yyabortlab: yyresult = 1; goto yyreturn; -/*---------------------------------------------. -| yyoverflowab -- parser overflow comes here. | -`---------------------------------------------*/ +#ifndef yyoverflow +/*----------------------------------------------. +| yyoverflowlab -- parser overflow comes here. | +`----------------------------------------------*/ yyoverflowlab: yyerror ("parser stack overflow"); yyresult = 2; /* Fall through. */ +#endif yyreturn: #ifndef yyoverflow @@ -3848,7 +4329,9 @@ yyreturn: #endif return yyresult; } -#line 1845 "./parser.y" + + +#line 1845 "parser.y" /* Dialog specific functions */ static dialog_t *dialog_style(style_t * st, dialog_t *dlg) @@ -4256,27 +4739,32 @@ static event_t *add_event(int key, int id, int flags, event_t *prev) static event_t *add_string_event(string_t *key, int id, int flags, event_t *prev) { - int keycode = 0; + int keycode = 0, keysym = 0; event_t *ev = new_event(); - if(key->type != str_char) - yyerror("Key code must be an ascii string"); + if(key->type == str_char) + keysym = key->str.cstr[0]; + else + keysym = key->str.wstr[0]; - if((flags & WRC_AF_VIRTKEY) && (!isupper(key->str.cstr[0] & 0xff) && !isdigit(key->str.cstr[0] & 0xff))) + if((flags & WRC_AF_VIRTKEY) && (!isupper(keysym & 0xff) && !isdigit(keysym & 0xff))) yyerror("VIRTKEY code is not equal to ascii value"); - if(key->str.cstr[0] == '^' && (flags & WRC_AF_CONTROL) != 0) + if(keysym == '^' && (flags & WRC_AF_CONTROL) != 0) { yyerror("Cannot use both '^' and CONTROL modifier"); } - else if(key->str.cstr[0] == '^') + else if(keysym == '^') { - keycode = toupper(key->str.cstr[1]) - '@'; + if(key->type == str_char) + keycode = toupper(key->str.cstr[1]) - '@'; + else + keycode = toupper(key->str.wstr[1]) - '@'; if(keycode >= ' ') yyerror("Control-code out of range"); } else - keycode = key->str.cstr[0]; + keycode = keysym; ev->key = keycode; ev->id = id; ev->flags = flags & ~WRC_AF_ASCII; @@ -5038,3 +5526,4 @@ static int rsrcid_to_token(int lookahead) return token; } + diff --git a/reactos/tools/wrc/y.tab.h b/reactos/tools/wrc/y.tab.h index 6fbe25d133d..f39c76d44bb 100644 --- a/reactos/tools/wrc/y.tab.h +++ b/reactos/tools/wrc/y.tab.h @@ -1,8 +1,207 @@ -#ifndef BISON_Y_TAB_H -# define BISON_Y_TAB_H +/* A Bison parser, made by GNU Bison 1.875b. */ -#ifndef YYSTYPE -typedef union{ +/* Skeleton parser for Yacc-like parsing with Bison, + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +/* As a special exception, when this file is copied by Bison into a + Bison output file, you may use that output file without restriction. + This special exception was added by the Free Software Foundation + in version 1.24 of Bison. */ + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + tNL = 258, + tNUMBER = 259, + tLNUMBER = 260, + tSTRING = 261, + tIDENT = 262, + tFILENAME = 263, + tRAWDATA = 264, + tACCELERATORS = 265, + tBITMAP = 266, + tCURSOR = 267, + tDIALOG = 268, + tDIALOGEX = 269, + tMENU = 270, + tMENUEX = 271, + tMESSAGETABLE = 272, + tRCDATA = 273, + tVERSIONINFO = 274, + tSTRINGTABLE = 275, + tFONT = 276, + tFONTDIR = 277, + tICON = 278, + tAUTO3STATE = 279, + tAUTOCHECKBOX = 280, + tAUTORADIOBUTTON = 281, + tCHECKBOX = 282, + tDEFPUSHBUTTON = 283, + tPUSHBUTTON = 284, + tRADIOBUTTON = 285, + tSTATE3 = 286, + tGROUPBOX = 287, + tCOMBOBOX = 288, + tLISTBOX = 289, + tSCROLLBAR = 290, + tCONTROL = 291, + tEDITTEXT = 292, + tRTEXT = 293, + tCTEXT = 294, + tLTEXT = 295, + tBLOCK = 296, + tVALUE = 297, + tSHIFT = 298, + tALT = 299, + tASCII = 300, + tVIRTKEY = 301, + tGRAYED = 302, + tCHECKED = 303, + tINACTIVE = 304, + tNOINVERT = 305, + tPURE = 306, + tIMPURE = 307, + tDISCARDABLE = 308, + tLOADONCALL = 309, + tPRELOAD = 310, + tFIXED = 311, + tMOVEABLE = 312, + tCLASS = 313, + tCAPTION = 314, + tCHARACTERISTICS = 315, + tEXSTYLE = 316, + tSTYLE = 317, + tVERSION = 318, + tLANGUAGE = 319, + tFILEVERSION = 320, + tPRODUCTVERSION = 321, + tFILEFLAGSMASK = 322, + tFILEOS = 323, + tFILETYPE = 324, + tFILEFLAGS = 325, + tFILESUBTYPE = 326, + tMENUBARBREAK = 327, + tMENUBREAK = 328, + tMENUITEM = 329, + tPOPUP = 330, + tSEPARATOR = 331, + tHELP = 332, + tTOOLBAR = 333, + tBUTTON = 334, + tBEGIN = 335, + tEND = 336, + tDLGINIT = 337, + tNOT = 338, + pUPM = 339 + }; +#endif +#define tNL 258 +#define tNUMBER 259 +#define tLNUMBER 260 +#define tSTRING 261 +#define tIDENT 262 +#define tFILENAME 263 +#define tRAWDATA 264 +#define tACCELERATORS 265 +#define tBITMAP 266 +#define tCURSOR 267 +#define tDIALOG 268 +#define tDIALOGEX 269 +#define tMENU 270 +#define tMENUEX 271 +#define tMESSAGETABLE 272 +#define tRCDATA 273 +#define tVERSIONINFO 274 +#define tSTRINGTABLE 275 +#define tFONT 276 +#define tFONTDIR 277 +#define tICON 278 +#define tAUTO3STATE 279 +#define tAUTOCHECKBOX 280 +#define tAUTORADIOBUTTON 281 +#define tCHECKBOX 282 +#define tDEFPUSHBUTTON 283 +#define tPUSHBUTTON 284 +#define tRADIOBUTTON 285 +#define tSTATE3 286 +#define tGROUPBOX 287 +#define tCOMBOBOX 288 +#define tLISTBOX 289 +#define tSCROLLBAR 290 +#define tCONTROL 291 +#define tEDITTEXT 292 +#define tRTEXT 293 +#define tCTEXT 294 +#define tLTEXT 295 +#define tBLOCK 296 +#define tVALUE 297 +#define tSHIFT 298 +#define tALT 299 +#define tASCII 300 +#define tVIRTKEY 301 +#define tGRAYED 302 +#define tCHECKED 303 +#define tINACTIVE 304 +#define tNOINVERT 305 +#define tPURE 306 +#define tIMPURE 307 +#define tDISCARDABLE 308 +#define tLOADONCALL 309 +#define tPRELOAD 310 +#define tFIXED 311 +#define tMOVEABLE 312 +#define tCLASS 313 +#define tCAPTION 314 +#define tCHARACTERISTICS 315 +#define tEXSTYLE 316 +#define tSTYLE 317 +#define tVERSION 318 +#define tLANGUAGE 319 +#define tFILEVERSION 320 +#define tPRODUCTVERSION 321 +#define tFILEFLAGSMASK 322 +#define tFILEOS 323 +#define tFILETYPE 324 +#define tFILEFLAGS 325 +#define tFILESUBTYPE 326 +#define tMENUBARBREAK 327 +#define tMENUBREAK 328 +#define tMENUITEM 329 +#define tPOPUP 330 +#define tSEPARATOR 331 +#define tHELP 332 +#define tTOOLBAR 333 +#define tBUTTON 334 +#define tBEGIN 335 +#define tEND 336 +#define tDLGINIT 337 +#define tNOT 338 +#define pUPM 339 + + + + +#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +#line 240 "parser.y" +typedef union YYSTYPE { string_t *str; int num; int *iptr; @@ -43,94 +242,15 @@ typedef union{ style_pair_t *styles; style_t *style; ani_any_t *ani; -} yystype; -# define YYSTYPE yystype +} YYSTYPE; +/* Line 1252 of yacc.c. */ +#line 248 "y.tab.h" +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif -# define tNL 257 -# define tNUMBER 258 -# define tLNUMBER 259 -# define tSTRING 260 -# define tIDENT 261 -# define tFILENAME 262 -# define tRAWDATA 263 -# define tACCELERATORS 264 -# define tBITMAP 265 -# define tCURSOR 266 -# define tDIALOG 267 -# define tDIALOGEX 268 -# define tMENU 269 -# define tMENUEX 270 -# define tMESSAGETABLE 271 -# define tRCDATA 272 -# define tVERSIONINFO 273 -# define tSTRINGTABLE 274 -# define tFONT 275 -# define tFONTDIR 276 -# define tICON 277 -# define tAUTO3STATE 278 -# define tAUTOCHECKBOX 279 -# define tAUTORADIOBUTTON 280 -# define tCHECKBOX 281 -# define tDEFPUSHBUTTON 282 -# define tPUSHBUTTON 283 -# define tRADIOBUTTON 284 -# define tSTATE3 285 -# define tGROUPBOX 286 -# define tCOMBOBOX 287 -# define tLISTBOX 288 -# define tSCROLLBAR 289 -# define tCONTROL 290 -# define tEDITTEXT 291 -# define tRTEXT 292 -# define tCTEXT 293 -# define tLTEXT 294 -# define tBLOCK 295 -# define tVALUE 296 -# define tSHIFT 297 -# define tALT 298 -# define tASCII 299 -# define tVIRTKEY 300 -# define tGRAYED 301 -# define tCHECKED 302 -# define tINACTIVE 303 -# define tNOINVERT 304 -# define tPURE 305 -# define tIMPURE 306 -# define tDISCARDABLE 307 -# define tLOADONCALL 308 -# define tPRELOAD 309 -# define tFIXED 310 -# define tMOVEABLE 311 -# define tCLASS 312 -# define tCAPTION 313 -# define tCHARACTERISTICS 314 -# define tEXSTYLE 315 -# define tSTYLE 316 -# define tVERSION 317 -# define tLANGUAGE 318 -# define tFILEVERSION 319 -# define tPRODUCTVERSION 320 -# define tFILEFLAGSMASK 321 -# define tFILEOS 322 -# define tFILETYPE 323 -# define tFILEFLAGS 324 -# define tFILESUBTYPE 325 -# define tMENUBARBREAK 326 -# define tMENUBREAK 327 -# define tMENUITEM 328 -# define tPOPUP 329 -# define tSEPARATOR 330 -# define tHELP 331 -# define tTOOLBAR 332 -# define tBUTTON 333 -# define tBEGIN 334 -# define tEND 335 -# define tDLGINIT 336 -# define tNOT 337 -# define pUPM 338 - extern YYSTYPE yylval; -#endif /* not BISON_Y_TAB_H */ + +