reactos/reactos/ReactOS-amd64.rbuild
KJK::Hyperion 7f4bf6c490 modified Makefile
Give poor pefixup its own echo line

modified   ReactOS-amd64.rbuild
modified   ReactOS-arm.rbuild
modified   ReactOS-i386.rbuild
   Set global linker flags globally
   Goodbye NTOSKRNL_SHARED

modified   tools/rbuild/backend/codeblocks/codeblocks.cpp
modified   tools/rbuild/backend/msvc/vcprojmaker.cpp
   Build fixes. I really want to delete these dead backends

modified   tools/rbuild/backend/mingw/linkers/ld.mak
   Makefile rule for the linker. Also generates the .lib and .exp for DLLs, and obsoletes a whole lot of shitty rbuild code

modified   tools/rbuild/backend/mingw/mingw.cpp
modified   tools/rbuild/backend/mingw/mingw.h
   Specify module type-specific linker flags... in the specification of flags for module types, instead of wherever
   Fix generation of project-global linker and NASM flags
   Give better names to the variables that contain names of BE-provided libraries
   Don't put quotes around the names of BE-provided libraries, GNU make doesn't support quoting in any way, shape or form and quotes around filenames actually break shit on Windows (see <http://reactos-blog.blogspot.com/2009/11/gnu-make-fails-on-windows-with-multiple.html>). Just install the BE in a path without spaces in it
   Typo: LFLAGS is the flags for lex, flags for linker come from LDFLAGS

modified   tools/rbuild/backend/mingw/modulehandler.cpp
modified   tools/rbuild/backend/mingw/modulehandler.h
modified   tools/rbuild/module.cpp
modified   tools/rbuild/rbuild.h
   Moved generation of linker and import library generation rules out of rbuild and into sub-makefiles. A lot of code deleted, nothing of value was lost
   More LFLAGS -> LDFLAGS
   Goodbye mangledsymbols and underscoresymbols attributes, they don't do shit other than complicating my life
   If we have to add an underscore in front of the entry point name for some architectures, how about we do it in a single place?

modified   tools/rbuild/backend/mingw/rules.mak
   Minor cosmetic change

svn path=/trunk/; revision=44091
2009-11-11 03:41:14 +00:00

328 lines
9.9 KiB
Ruby

<?xml version="1.0"?>
<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
<project name="ReactOS" makefile="makefile-amd64.auto" xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="config-amd64.rbuild">
<xi:fallback>
<xi:include href="config-amd64.template.rbuild" />
</xi:fallback>
</xi:include>
<define name="_M_AMD64" />
<define name="_AMD64_" />
<define name="_M_AXP64" />
<define name="__x86_64__" />
<!-- define name="_X86AMD64_" / FIXME: what is this used for? -->
<define name="_WIN64" />
<define name="TARGET_amd64" host="true" />
<define name="USE_COMPILER_EXCEPTIONS" />
<property name="PLATFORM" value="PC"/>
<property name="usewrc" value="false"/>
<property name="WINEBUILD_FLAGS" value="--kill-at"/>
<if property="OPTIMIZE" value="1">
<compilerflag>-Os</compilerflag>
<compilerflag>-ftracer</compilerflag>
<compilerflag>-momit-leaf-frame-pointer</compilerflag>
</if>
<if property="OPTIMIZE" value="2">
<compilerflag>-Os</compilerflag>
</if>
<if property="OPTIMIZE" value="3">
<compilerflag>-O1</compilerflag>
</if>
<if property="OPTIMIZE" value="4">
<compilerflag>-O2</compilerflag>
</if>
<if property="OPTIMIZE" value="5">
<compilerflag>-O3</compilerflag>
</if>
<compilerflag>-U_X86_</compilerflag>
<compilerflag>-mpreferred-stack-boundary=4</compilerflag>
<compilerflag>-fno-strict-aliasing</compilerflag>
<compilerflag>-Wno-strict-aliasing</compilerflag>
<compilerflag>-Wpointer-arith</compilerflag>
<compilerflag>-Wno-multichar</compilerflag>
<compilerflag>-Wno-format</compilerflag>
<!-- compilerflag>-H</compilerflag> enable this for header traces -->
<group linkerset="ld">
<linkerflag>-disable-stdcall-fixup</linkerflag>
<linkerflag>-static</linkerflag>
<linkerflag>--unique=.eh_frame</linkerflag>
<linkerflag>-file-alignment=0x1000</linkerflag>
<linkerflag>-section-alignment=0x1000</linkerflag>
</group>
<!-- Here starts <xi:include href="ReactOS-generic.rbuild" /> -->
<xi:include href="baseaddress.rbuild" />
<define name="__REACTOS__" />
<define name="__REACTOS__" host="true" />
<if property="DBG" value="1">
<define name="DBG">1</define>
<define name="_SEH_ENABLE_TRACE" />
<property name="DBG_OR_KDBG" value="true" />
</if>
<if property="DBG" value="0">
<define name="DBG">0</define>
</if>
<if property="KDBG" value="1">
<define name="KDBG">1</define>
<property name="DBG_OR_KDBG" value="true" />
</if>
<!-- The version target valid values are: Nt4 , NT5 , NT51 -->
<property name="VERSION_TARGET" value="NT52" />
<if property="VERSION_TARGET" value="NT4">
<define name="WINVER">0x400</define>
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x400</define>
<define name="_WIN32_WINDOWS">0x400</define>
<define name="_SETUPAPI_VER">0x400</define>
</if>
<if property="VERSION_TARGET" value="NT5">
<define name="WINVER">0x500</define>
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x500</define>
<define name="_WIN32_WINDOWS">0x500</define>
<define name="_SETUPAPI_VER">0x500</define>
</if>
<if property="VERSION_TARGET" value="NT51">
<define name="WINVER">0x501</define>
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x501</define>
<define name="_WIN32_WINDOWS">0x501</define>
<define name="_SETUPAPI_VER">0x501</define>
</if>
<if property="VERSION_TARGET" value="NT52">
<define name="WINVER">0x502</define>
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x502</define>
<define name="_WIN32_WINDOWS">0x502</define>
<define name="_SETUPAPI_VER">0x502</define>
</if>
<if property="VERSION_TARGET" value="NT6">
<define name="WINVER">0x600</define>
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x600</define>
<define name="_WIN32_WINDOWS">0x600</define>
<define name="_SETUPAPI_VER">0x600</define>
</if>
<include>.</include>
<include>include</include>
<include root="intermediate">include</include>
<include>include/psdk</include>
<include root="intermediate">include/psdk</include>
<include>include/dxsdk</include>
<include root="intermediate">include/dxsdk</include>
<include>include/crt</include>
<include>include/crt/mingw32</include>
<include>include/ddk</include>
<include>include/GL</include>
<include>include/ndk</include>
<include>include/reactos</include>
<include root="intermediate">include/reactos</include>
<include root="intermediate">include/reactos/mc</include>
<include>include/reactos/libs</include>
<include host="true">include</include>
<include host="true" root="intermediate">include</include>
<include host="true">include/reactos</include>
<include host="true">include/reactos/wine</include>
<if property="USERMODE" value="1">
<directory name="base">
<xi:include href="base/base.rbuild" />
</directory>
<directory name="dll">
<xi:include href="dll/dll.rbuild" />
</directory>
</if>
<directory name="boot">
<xi:include href="boot/boot.rbuild" />
</directory>
<directory name="drivers">
<directory name="base">
<xi:include href="drivers/base/directory.rbuild" />
</directory>
<directory name="bus">
<xi:include href="drivers/bus/directory.rbuild" />
</directory>
<directory name="directx">
<xi:include href="drivers/directx/directory.rbuild" />
</directory>
<directory name="filesystems">
<xi:include href="drivers/filesystems/directory.rbuild" />
</directory>
<directory name="input">
<xi:include href="drivers/input/directory.rbuild" />
</directory>
<directory name="ksfilter">
<xi:include href="drivers/ksfilter/directory.rbuild" />
</directory>
<!-- directory name="multimedia">
<xi:include href="drivers/multimedia/directory.rbuild" />
</directory -->
<directory name="network">
<xi:include href="drivers/network/directory.rbuild" />
</directory>
<directory name="parallel">
<xi:include href="drivers/parallel/directory.rbuild" />
</directory>
<directory name="serial">
<xi:include href="drivers/serial/directory.rbuild" />
</directory>
<directory name="setup">
<xi:include href="drivers/setup/directory.rbuild" />
</directory>
<directory name="storage">
<xi:include href="drivers/storage/directory.rbuild" />
</directory>
<directory name="usb">
<xi:include href="drivers/usb/directory.rbuild" />
</directory>
<directory name="video">
<xi:include href="drivers/video/directory.rbuild" />
</directory>
<directory name="wdm">
<xi:include href="drivers/wdm/wdm.rbuild" />
</directory>
<directory name="wmi">
<xi:include href="drivers/wmi/wmilib.rbuild" />
</directory>
</directory>
<directory name="hal">
<xi:include href="hal/hal.rbuild" />
</directory>
<directory name="include">
<xi:include href="include/directory.rbuild" />
</directory>
<directory name="lib">
<directory name="3rdparty">
<directory name="adns">
<xi:include href="lib/3rdparty/adns/adns.rbuild" />
</directory>
<directory name="bzip2">
<xi:include href="lib/3rdparty/bzip2/bzip2.rbuild" />
</directory>
<directory name="cardlib">
<xi:include href="lib/3rdparty/cardlib/cardlib.rbuild" />
</directory>
<directory name="expat">
<xi:include href="lib/3rdparty/expat/expat.rbuild" />
</directory>
<directory name="freetype">
<xi:include href="lib/3rdparty/freetype/freetype.rbuild" />
</directory>
<directory name="icu4ros">
<xi:include href="lib/3rdparty/icu4ros/icu4ros.rbuild" />
</directory>
<directory name="libsamplerate">
<xi:include href="lib/3rdparty/libsamplerate/libsamplerate.rbuild" />
</directory>
<directory name="libwine">
<xi:include href="lib/3rdparty/libwine/libwine.rbuild" />
</directory>
<directory name="libxml2">
<xi:include href="lib/3rdparty/libxml2/libxml2.rbuild" />
</directory>
<if property="USERMODE" value="1">
<directory name="mingw">
<xi:include href="lib/3rdparty/mingw/mingw.rbuild" />
</directory>
</if>
<directory name="zlib">
<xi:include href="lib/3rdparty/zlib/zlib.rbuild" />
</directory>
</directory>
<directory name="sdk">
<xi:include href="lib/sdk/sdk.rbuild" />
</directory>
<directory name="cmlib">
<xi:include href="lib/cmlib/cmlib.rbuild" />
</directory>
<directory name="debugsup">
<xi:include href="lib/debugsup/debugsup.rbuild" />
</directory>
<directory name="drivers">
<xi:include href="lib/drivers/directory.rbuild" />
</directory>
<directory name="epsapi">
<xi:include href="lib/epsapi/epsapi.rbuild" />
</directory>
<directory name="fslib">
<xi:include href="lib/fslib/directory.rbuild" />
</directory>
<directory name="host">
<xi:include href="lib/host/directory.rbuild" />
</directory>
<directory name="inflib">
<xi:include href="lib/inflib/inflib.rbuild" />
</directory>
<directory name="nls">
<xi:include href="lib/nls/nls.rbuild" />
</directory>
<directory name="ntdllsys">
<xi:include href="lib/ntdllsys/ntdllsys.rbuild" />
</directory>
<directory name="pseh">
<xi:include href="lib/pseh/pseh.rbuild" />
</directory>
<directory name="recyclebin">
<xi:include href="lib/recyclebin/recyclebin.rbuild" />
</directory>
<directory name="rossym">
<xi:include href="lib/rossym/rossym.rbuild" />
</directory>
<directory name="rtl">
<xi:include href="lib/rtl/rtl.rbuild" />
</directory>
<directory name="smlib">
<xi:include href="lib/smlib/smlib.rbuild" />
</directory>
<directory name="win32ksys">
<xi:include href="lib/win32ksys/win32ksys.rbuild" />
</directory>
</directory>
<directory name="media">
<xi:include href="media/media.rbuild" />
</directory>
<directory name="ntoskrnl">
<xi:include href="ntoskrnl/ntoskrnl.rbuild" />
</directory>
<directory name="subsystems">
<xi:include href="subsystems/subsystems.rbuild" />
</directory>
<directory name="tools">
<xi:include href="tools/tools.rbuild" />
</directory>
<!-- Here ends <xi:include href="ReactOS-generic.rbuild" /> -->
</project>