git.ucc.asn.au
/
tpg
/
acess2.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
515d24f
)
Usermode - C++ support, crtbegin/crtend
author
John Hodge
<
[email protected]
>
Sun, 9 Mar 2014 07:45:29 +0000
(15:45 +0800)
committer
John Hodge
<
[email protected]
>
Sun, 9 Mar 2014 07:45:29 +0000
(15:45 +0800)
Usermode/Applications/Makefile.cfg
patch
|
blob
|
history
Usermode/Applications/Makefile.tpl
patch
|
blob
|
history
Usermode/Libraries/Makefile.cfg
patch
|
blob
|
history
Usermode/Libraries/Makefile.tpl
patch
|
blob
|
history
diff --git
a/Usermode/Applications/Makefile.cfg
b/Usermode/Applications/Makefile.cfg
index
a1a0141
..
ef17a14
100644
(file)
--- a/
Usermode/Applications/Makefile.cfg
+++ b/
Usermode/Applications/Makefile.cfg
@@
-25,4
+25,7
@@
LDFLAGS += -rpath-link $(OUTPUTDIR)Libs
# Extra-verbose errors!
#CFLAGS += -Wall -Wextra -Wwrite-strings -Wshadow -Wswitch-default -Wswitch-enum -Wstrict-overflow=5 -Wfloat-equal -Wundef -Wmissing-declarations -Wlogical-op -Wformat=2 -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wsync-nand -Wunused -Wstrict-overflow=5 -Wfloat-equal -Wundef -Wno-endif-labels -Wshadow -Wunsafe-loop-optimizations -Wbad-function-cast -Wc++-compat -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Wlogical-op -Waggregate-return -Wstrict-prototypes -Wold-style-definition -Wmissing-declarations -Wnormalized=nfc -Wpacked -Wpadded -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wdisabled-optimization -Woverlength-strings
# Extra-verbose errors!
#CFLAGS += -Wall -Wextra -Wwrite-strings -Wshadow -Wswitch-default -Wswitch-enum -Wstrict-overflow=5 -Wfloat-equal -Wundef -Wmissing-declarations -Wlogical-op -Wformat=2 -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wsync-nand -Wunused -Wstrict-overflow=5 -Wfloat-equal -Wundef -Wno-endif-labels -Wshadow -Wunsafe-loop-optimizations -Wbad-function-cast -Wc++-compat -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Wlogical-op -Waggregate-return -Wstrict-prototypes -Wold-style-definition -Wmissing-declarations -Wnormalized=nfc -Wpacked -Wpadded -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wdisabled-optimization -Woverlength-strings
+CRTBEGIN = $(shell $(CC) $(CFLAGS) -print-file-name=crtbegin.o)
+CRTEND = $(shell $(CC) $(CFLAGS) -print-file-name=crtend.o)
+
DIR = Bin
DIR = Bin
diff --git
a/Usermode/Applications/Makefile.tpl
b/Usermode/Applications/Makefile.tpl
index
4f9dde5
..
efcb57d
100644
(file)
--- a/
Usermode/Applications/Makefile.tpl
+++ b/
Usermode/Applications/Makefile.tpl
@@
-48,7
+48,7
@@
install: $(_BIN)
$(_BIN): $(OUTPUTDIR)Libs/acess.ld $(OUTPUTDIR)Libs/crt0.o $(_LIBS) $(OBJ)
@mkdir -p $(dir $(_BIN))
@echo [LD] -o $@
$(_BIN): $(OUTPUTDIR)Libs/acess.ld $(OUTPUTDIR)Libs/crt0.o $(_LIBS) $(OBJ)
@mkdir -p $(dir $(_BIN))
@echo [LD] -o $@
- $V$(LD) -g $(LDFLAGS) -o $@ $(
OBJ) $(LIBGCC_PATH
)
+ $V$(LD) -g $(LDFLAGS) -o $@ $(
CRTBEGIN) $(OBJ) $(LIBGCC_PATH) $(CRTEND
)
$V$(DISASM) $(_BIN) > $(_OBJPREFIX)$(BIN).dsm
$(OBJ): $(_OBJPREFIX)%.o: %.c
$V$(DISASM) $(_BIN) > $(_OBJPREFIX)$(BIN).dsm
$(OBJ): $(_OBJPREFIX)%.o: %.c
diff --git
a/Usermode/Libraries/Makefile.cfg
b/Usermode/Libraries/Makefile.cfg
index
d134c85
..
5920059
100644
(file)
--- a/
Usermode/Libraries/Makefile.cfg
+++ b/
Usermode/Libraries/Makefile.cfg
@@
-14,6
+14,7
@@
ifeq ($(ARCHDIR),native)
else
LDFLAGS += -Wl,-init,SoMain
CFLAGS += -fPIC
else
LDFLAGS += -Wl,-init,SoMain
CFLAGS += -fPIC
+ CXXFLAGS += -fPIC
endif
else ifneq ($(HOST_ARCH),)
ASFLAGS += -D ARCHDIR=$(ARCHDIR) -D __ASSEMBLER__=1
endif
else ifneq ($(HOST_ARCH),)
ASFLAGS += -D ARCHDIR=$(ARCHDIR) -D __ASSEMBLER__=1
@@
-23,10
+24,12
@@
else ifneq ($(HOST_ARCH),)
else
LDFLAGS += -Wl,-init,SoMain
CFLAGS += -fPIC
else
LDFLAGS += -Wl,-init,SoMain
CFLAGS += -fPIC
+ CXXFLAGS += -fPIC
endif
else
CPPFLAGS := -ffreestanding
CFLAGS := -fno-stack-protector -fPIC
endif
else
CPPFLAGS := -ffreestanding
CFLAGS := -fno-stack-protector -fPIC
+ CXXFLAGS := -fno-stack-protector -fPIC
LDFLAGS := -I/Acess/Libs/ld-acess.so -lld-acess `$(CC) -print-libgcc-file-name`
endif
LDFLAGS += -g -nostdlib -shared -eSoMain -x --no-undefined -L$(OUTPUTDIR)Libs/
LDFLAGS := -I/Acess/Libs/ld-acess.so -lld-acess `$(CC) -print-libgcc-file-name`
endif
LDFLAGS += -g -nostdlib -shared -eSoMain -x --no-undefined -L$(OUTPUTDIR)Libs/
diff --git
a/Usermode/Libraries/Makefile.tpl
b/Usermode/Libraries/Makefile.tpl
index
00913ce
..
a99ff14
100644
(file)
--- a/
Usermode/Libraries/Makefile.tpl
+++ b/
Usermode/Libraries/Makefile.tpl
@@
-92,6
+92,11
@@
$(_OBJPREFIX)%.o: %.c
@mkdir -p $(dir $@)
$V$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -c $< -MMD -MP -MT $@ -MF
[email protected]
@mkdir -p $(dir $@)
$V$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ -c $< -MMD -MP -MT $@ -MF
[email protected]
+$(_OBJPREFIX)%.o: %.cc
+ @echo [CXX] -o $@
+ @mkdir -p $(dir $@)
+ $V$(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ -c $< -MMD -MP -MT $@ -MF
[email protected]
+
$(_OBJPREFIX)%.ao: %.$(ASSUFFIX)
@echo [AS] -o $@
@mkdir -p $(dir $@)
$(_OBJPREFIX)%.ao: %.$(ASSUFFIX)
@echo [AS] -o $@
@mkdir -p $(dir $@)
UCC
git Repository :: git.ucc.asn.au