1 SubDir HAIKU_TOP src libs stdc++ legacy ;
3 local architectureObject ;
4 for architectureObject in [ MultiArchSubDirSetup x86_gcc2 ] {
5 on $(architectureObject) {
6 local architecture = $(TARGET_PACKAGING_ARCH) ;
8 # disable undesired warnings, and add some required C++ flags
9 CCFLAGS += -Wno-missing-prototypes ;
10 C++FLAGS += -nostdinc++ -fno-implicit-templates -Wno-sign-compare
13 # define header-searchpaths all by ourselves, as including system headers
15 # use the following paths to make use of the headers contained in glibc,
16 # but this doesn't work yet, as the libio we are using here and the one
17 # contained in our libroot are different versions.
19 = [ FDirName $(HAIKU_TOP) src system libroot posix glibc ] ;
22 [ FDirName $(glibcDir) libio ]
23 [ FDirName $(glibcDir) stdlib ]
24 [ FDirName $(glibcDir) stdio-common ]
25 [ FDirName $(glibcDir) include ]
26 [ FDirName $(glibcDir) include arch x86 ]
27 [ FDirName $(HAIKU_TOP) headers cpp ]
29 [ FDirName $(HAIKU_TOP) headers posix ]
30 [ FDirName $(HAIKU_TOP) headers os ]
31 [ FDirName $(HAIKU_TOP) headers os kernel ]
32 [ FDirName $(HAIKU_TOP) headers os storage ]
33 [ FDirName $(HAIKU_TOP) headers os support ]
34 [ FDirName $(HAIKU_TOP) headers build gcc-2.95.3 ]
35 # so that include_next will work
38 UsePrivateHeaders libroot ;
40 # some source-files generate several different objects, depending on
41 # the defines that are used during the compilation call.
42 # So we explicitly state each of these (with their respective defines):
43 rule GenerateStdC++Object
45 # GenerateStdC++Object <object> : <source> : <defines> ;
46 local object = [ FGristFiles $(1) ] ;
47 local sources = $(2) ;
48 local defines = $(3) ;
51 Object $(object) : $(sources) ;
52 ObjectDefines $(object) : $(defines) ;
55 ObjectDefines $(sources) : $(defines) ;
59 GenerateStdC++Object cstrio.o
61 : C EXTRACT INSERT GETLINE
64 GenerateStdC++Object cstrmain.o
66 : C REP MAIN TRAITS ADDSS ADDPS ADDCS ADDSP ADDSC EQSS EQPS EQSP
67 NESS NEPS NESP LTSS LTPS LTSP GTSS GTPS GTSP LESS LEPS LESP GESS
70 GenerateStdC++Object dcomio.o
74 GenerateStdC++Object dcomplex.o
76 : D MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC DIVCC
77 DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS ARG
78 POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN
81 GenerateStdC++Object fcomio.o
85 GenerateStdC++Object fcomplex.o
87 : F MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC DIVCC
88 DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS ARG
89 POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC SIN
92 GenerateStdC++Object ldcomio.o
96 GenerateStdC++Object ldcomplex.o
98 : LD MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC
99 DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC ABS
100 ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI POWFC
103 # generate standard objects through our new rule, too:
110 # c++ parts from libio:
142 # stuff imported from libiberty:
144 : basename.c getpagesize.c insque.c sigsetmask.c strerror.c
147 SharedLibraryFromObjects libstdc++.r4.so :