Commit graph

34 commits

Author SHA1 Message Date
Timo Kreuzer 13aa4a3d04 [RBUILD]
instead of defining -fno-set-stack-executable and -fno-optimize-sibling-calls in gcc.mak file, do it in ReactOS-i386.rbuild

svn path=/trunk/; revision=46449
2010-03-25 19:55:28 +00:00
Timo Kreuzer cbdf28bb6a [HEADERS]
Reintegrate header-work branch. Thanks to hours of boring work on the ddk headers (Most of it done by Amine Khaldi), we have now a decent set, which is still incomplete but already relatively close to latest WDK. A clean rebuild is recommended.

svn path=/trunk/; revision=46155
2010-03-12 23:16:29 +00:00
Timo Kreuzer 9ea495ba33 Create a branch for header work.
svn path=/branches/header-work/; revision=45691
2010-02-26 22:57:55 +00:00
Colin Finck 75538f4c0a The big RosBE 1.5 compatibility patch. You will need RosBE 1.5 from this point!
- Set the minimum GCC version to 4.4.0 and minimum Binutils version to 20091016.
- Remove the -fno-unit-at-a-time hacks.
- Remove dgorbachev's temporary hacks for user-mode C++ applications.
- Merge ntoskrnl's "precomp.h" and "ntoskrnl.h" again, the PCH issues have been fixed.
- Use our "ofmt_stub.a" to be compatible with newer MinGW Runtime versions.
- Use LD's new -exclude-all-symbols option to not auto-export all symbols in case no DEF file or __declspec(dllexport) was specified.
  We used to patch our LD version to work around this problem.
- Use LD's --start-group and --end-group parameters to allow a more flexible linking order.
- Use GCC's -fno-set-stack-executable for amd64 and i386 targets to disable adding the __enable_execute_stack code.
- Change the makefile's name to "makefile-$(ARCH).auto" for all architectures.
- Remove some -Wno-error flags.

See issue #4810 for more details.

svn path=/trunk/; revision=45535
2010-02-09 18:14:58 +00:00
Timo Kreuzer 3ab9af72ac - merge r44429
- fix hal_generic_amd64.rbuild
- add missing files

svn path=/trunk/; revision=44430
2009-12-06 02:44:06 +00:00
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
Christoph von Wittich 25d647719b move widl compilerflags to ReactOS-i386.rbuild
svn path=/trunk/; revision=43627
2009-10-19 21:30:34 +00:00
Dmitry Gorbachev 687189aaaf A consistent indentation style is the hobgoblin of little minds.
svn path=/trunk/; revision=42888
2009-08-23 21:45:41 +00:00
ReactOS Portable Systems Group f1ab67f6ce Too many things in -i386 were still "generic" and had to be duplicated accross plat-specific rbuild files, so moved a whole bunch of them into the generic rbuild.
Ironically, the one thing that isn't generic -- which files get built -- was in the generic file, blocking the arm rbuild from ever being able to use it, so I split this out now.
Cleaned up the i386 and arm rbuild files to use the new generic rbuild.
Brought the arm rbuild file up to spec to use the new compilerset/linkerset and msvc-compliant options.

svn path=/trunk/; revision=41864
2009-07-11 11:47:21 +00:00
KJK::Hyperion 586a1d0fff Move gcc -g and -Wall options out of rbuild and into .rbuild files
Move non-architecture-specific msc options to ReactOS-generic.rbuild

svn path=/trunk/; revision=41520
2009-06-21 22:13:28 +00:00
KJK::Hyperion 66128d2725 modified dll/win32/srclient/srclient_main.c
What the hell, Arch Blackmann? <windef.h>, <winbase.h> and <winnls.h> are not meant to be included directly. Include <windows.h> instead

modified   drivers/video/font/ftfd/rosglue.c
   Move standard C includes before Windows includes, so the required types are defined beforehand 

modified   include/crt/_mingw.h
   Re-add Visual C++ support
   va_list is not a built-in type, it does not belong in _mingw.h
   Do not include intrin.h (screw you, Arch)
   Removed definition of _USE_32BIT_TIME_T ("ROS HACK!")

modified   include/crt/conio.h
modified   include/crt/stdio.h
modified   include/crt/wchar.h
   Pull in va_list from stdarg.h

modified   include/crt/mingw32/intrin.h
modified   include/crt/mingw32/intrin_arm.h
modified   include/crt/mingw32/intrin_x86.h
   intrin.h defines size_t and uintptr_t
   The _real_, ultimate magic incantation for inline functions is extern __inline__ __attribute__((__always_inline__,__gnu_inline__))
   Fix __addfsbyte, __addfsword

added      include/crt/msc
added      include/crt/msc/intrin.h
   Ported our intrin.h to Visual C++

modified   ReactOS-arm.rbuild
modified   ReactOS-i386.rbuild
   ROS HACK!s belong in the project definition

modified   ReactOS-generic.rbuild
   Compiler-specific include directories

svn path=/trunk/; revision=41421
2009-06-16 00:24:26 +00:00
KJK::Hyperion e1dbbac2c4 modified ReactOS-generic.rbuild
modified   ReactOS-i386.rbuild
modified   tools/rbuild/backend/mingw/mingw.cpp
   Don't feed GCC options in MSC
   Minor detection fixes

Support for the Microsoft compiler is now fully functional: now get off your grotesquely fat asses and start fixing code so that it compiles with it

TODO: make it fully functional for real (PCH, full dependencies); Microsoft linker support

svn path=/trunk/; revision=41374
2009-06-10 19:12:18 +00:00
Aleksey Bragin 59924db62f - Turn on multi-character constants support in GCC. Makes TAG macro usage redundant.
svn path=/trunk/; revision=39658
2009-02-18 14:51:07 +00:00
Timo Kreuzer 1401814d97 Merge freeldr from amd64 branch:
34725, 34726, 34727, 34728, 34733, 34735, 34747, 34748, 34888, 34937, 34968, 35021, 35351, 35360, 35445, 35493, 35495, 35505, 35547, 35696, 35704, 36343, 36355, 36865, 37306, 37896, 38332, 38942, 38950, 38951, 38959, 39073, 39278

svn path=/trunk/; revision=39638
2009-02-17 04:05:26 +00:00
Christoph von Wittich 81afdb2e7d add -H to compilerflags for resolving header issues (as comment)
svn path=/trunk/; revision=39503
2009-02-08 20:47:30 +00:00
KJK::Hyperion 5f139de511 Preparing for future widl sync
modified   ReactOS-i386.rbuild
   Define USE_COMPILER_EXCEPTIONS because we don't need SEH hacks in RPC stubs (neener neener)

modified   include/psdk/wtypes.idl
modified   include/psdk/xmldom.idl
   Include guard format will change in widl: pre-emptively work around it

svn path=/trunk/; revision=38670
2009-01-09 16:50:17 +00:00
Colin Finck 4ad62aac38 - Add a "host" attribute to the project's <include> and <define> tags to make it possible to define global includes/defines for host components
- Define TARGET_arm/TARGET_i386 in the ReactOS-arm.rbuild/ReactOS-i386.rbuild files for the host tools to make it possible for them to know about the target to build
- Make use of this define in winebuild to fix the issue of r36927 properly
- Define global includes for host tools to simplify all host tool/library rbuild files
- Remove dead rbuild code

- Remove the include/reactos/config.h file, none of its defines are still used
- Fix components accidentally using that file

svn path=/trunk/; revision=36995
2008-10-26 18:03:06 +00:00
Hervé Poussineau b2a074adbf Limit use of -enable-stdcall-fixup to mesa32, msvcrt and riched20 modules
svn path=/trunk/; revision=35263
2008-08-10 11:42:31 +00:00
Colin Finck a9fabb5fd5 Revert r34533 (except the nice indentation in the Makefile) for unbreaking trunk.
This change is also not compatible with current cleaning scripts in RosBE and on the Buildslaves (which only delete "makefile.auto"), leading to possibly unclean builds if the generated makefile wouldn't be deleted.
The ultimate goal would be putting the generated makefiles into the intermediate directories, so we also save one cleaning step.

svn path=/trunk/; revision=34536
2008-07-15 22:04:16 +00:00
Hervé Poussineau d1a689916c Rename makefile.auto to makefile-$(ARCH).auto
svn path=/trunk/; revision=34533
2008-07-15 20:42:08 +00:00
Hervé Poussineau 112d32b2eb NTOSKRNL_SHARED should not contain linker parameters in compiler form
svn path=/trunk/; revision=34190
2008-06-29 15:11:16 +00:00
Christoph von Wittich 8acf5e8480 Fno-strict-aliasing -> fno-strict-aliasing
svn path=/trunk/; revision=32005
2008-01-25 20:30:52 +00:00
Christoph von Wittich d882c08be3 use Fno-strict-aliasing
svn path=/trunk/; revision=32004
2008-01-25 18:32:27 +00:00
Aleksey Bragin c9c1def2a8 - Move preferred stack boundary = 2^2 out of the OPTIMIZE switch, because it's always defined.
- Remove assumption that GDB=1 automatically means -O0. This is wrong, optimization and debugger should be controlled independently.
- Cleanup blah-blah from config.template.rbuild.

svn path=/trunk/; revision=31435
2007-12-25 16:22:20 +00:00
Christoph von Wittich 1b69e6d038 adding back -enable-stdcall-fixup linkerflag
svn path=/trunk/; revision=30622
2007-11-21 11:47:58 +00:00
Christoph von Wittich 2d54e54552 remove the -enable-stdcall-fixup linkerflag
svn path=/trunk/; revision=30588
2007-11-20 08:06:46 +00:00
Art Yerkes 0abf169695 All remaining changes from the PPC branch. Not well tested yet. Many things
are indeed still stubs or WIP code.

Some people have been interested in helping out from some time and I'm sorry
I haven't been able to do this merge finally for a while.

svn path=/trunk/; revision=29407
2007-10-06 07:53:20 +00:00
Colin Finck 47dea31217 [FORMATTING]
- Use TABs instead of spaces in some more .rbuild files
- No code changes

svn path=/trunk/; revision=29060
2007-09-15 15:20:31 +00:00
Colin Finck 256cab14c1 Revert the changes in r29036 to the file "ReactOS-i386.rbuild". They broke build and look like test code for me.
svn path=/trunk/; revision=29041
2007-09-14 17:34:37 +00:00
Hervé Poussineau 4b912ebbbc Clean up .rbuild files and make them xml compliant
Inspired by bug 2627

svn path=/trunk/; revision=29036
2007-09-14 17:07:53 +00:00
Hervé Poussineau 00ea7e6ada Move generic part of ReactOS-$(ARCH).rbuild to ReactOS-generic.rbuild
svn path=/trunk/; revision=28453
2007-08-22 15:06:43 +00:00
Hervé Poussineau 85d3e8b1d1 Add missing include directory
svn path=/trunk/; revision=28128
2007-08-03 12:12:41 +00:00
Hervé Poussineau df770c6d06 Move some more autogenerated files to intermediate directory
Remove POSTAUTO hack in Makefile

svn path=/trunk/; revision=28126
2007-08-03 11:54:33 +00:00
Hervé Poussineau 1a47ede2ff Add ROS_ARCH environment variable
Set -r option of rbuild as mandatory

svn path=/trunk/; revision=28124
2007-08-03 11:35:01 +00:00
Renamed from reactos/ReactOS.rbuild (Browse further)