-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathmakefile_android
More file actions
131 lines (99 loc) · 3.1 KB
/
Copy pathmakefile_android
File metadata and controls
131 lines (99 loc) · 3.1 KB
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#
# Qt5xHb - Bindings libraries for Harbour/xHarbour and Qt Framework 5
#
# Copyright (c) 2025 Marcos Antonio Gambeta <marcosgambeta@outlook.com>
#
# Makefile for Android
#
QT_BIN_DIR = $(QTDIR)/bin
QT_INC_DIR = $(QTDIR)/include
QT_LIB_DIR = $(QTDIR)/lib
# lista de módulos
include mak/modules1.mak
# checa presença dos módulos na instalação do Qt Framework
include mak/modules2.mak
#
# Configuração do Harbour
#
HB_BIN_DIR = $(HBDIR)/bin
HB_INC_DIR = $(HBDIR)/include
#
# Configuração do Qt5xHb
#
QT5XHB_INC_DIR = include
QT5XHB_OBJ_DIR = obj/$(QTPLATFORM)/$(QTCOMP)
QT5XHB_LIB_DIR = lib/$(QTPLATFORM)/$(QTCOMP)
QT5XHB_SRC_DIR = source
#
# Extensões para objetos e bibliotecas
#
OBJEXT = .o
LIBEXT = .a
LIBPRE = lib
HB = $(HB_BIN_DIR)/harbour
PRGFLAGS = -n -w3 -gc3
PRGINCLUDES = -I$(QT5XHB_INC_DIR) -I$(HB_INC_DIR)
#
# Configuração do compilador C++
#
CC = $(NDKDIR)/toolchains/$(NDKTOOLCHAIN)/prebuilt/windows-x86_64/bin/$(NDKTOOLCHAINPREFIX)-g++
CFLAGS =
CFLAGS += -c -Wno-psabi -march=armv5te -mtune=xscale -msoft-float -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -DANDROID -Wa,--noexecstack -std=gnu++0x -O2 -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -Wall -Wno-psabi -W -D_REENTRANT -fPIE
CFLAGS += -DQT_OS_ANDROID_GCC_48_WORKAROUND
CFLAGS += -DQT_NO_DEBUG
# defina a flag abaixo para compilar sem checagem de parametros
# set QT5XHB_USER_CFLAGS=-DQT5XHB_DONT_CHECK_PARAMETERS
CFLAGS += $(QT5XHB_USER_CFLAGS)
include mak/modules3.mak
CINCLUDES =
CINCLUDES += -I$(QTDIR)/mkspecs/android-g++
CINCLUDES += -I$(QT_INC_DIR)
include mak/modules4.mak
CINCLUDES += -I$(NDKDIR)/sources/cxx-stl/gnu-libstdc++/$(NDKGCCVER)/include
CINCLUDES += -I$(NDKDIR)/sources/cxx-stl/gnu-libstdc++/$(NDKGCCVER)/libs/$(NDKGCCARCH)/include
CINCLUDES += -I$(NDKDIR)/platforms/android-$(NDKAPIVER)/arch-$(NDKAPIARCH)/usr/include
CINCLUDES += -I$(QT5XHB_INC_DIR)
CINCLUDES += -I$(QT5XHB_SRC_DIR)
CINCLUDES += -I$(HB_INC_DIR)
#
# Configuração do ar
#
LINK = $(NDKDIR)/toolchains/$(NDKTOOLCHAIN)/prebuilt/windows-x86_64/bin/$(NDKTOOLCHAINPREFIX)-ar
LFLAGS = rc
#
# Configuração do moc
#
MOC = $(QT_BIN_DIR)/moc
MOCFLAGS =
MOCFLAGS += -DQT_OS_ANDROID_GCC_48_WORKAROUND
MOCFLAGS += -DQT_NO_DEBUG
include mak/modules5.mak
MOCINCLUDES =
MOCINCLUDES += -I$(QTDIR)/mkspecs/android-g++
MOCINCLUDES += -I$(QT_INC_DIR)
include mak/modules6.mak
#
# Objetos
#
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/events$(OBJEXT)
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/signals$(OBJEXT)
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/dummy$(OBJEXT)
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/version$(OBJEXT)
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/utils$(OBJEXT)
OBJECTS_QTCORE += $(QT5XHB_OBJ_DIR)/qtdefs$(OBJEXT)
include mak/modules7.mak
#
# Bibliotecas
#
ALLLIBS =
include mak/modules8.mak
#
# Regras para o make
#
all: $(ALLLIBS)
LINK_CMD = $(LINK) $(LFLAGS) $@ $^
HB_CMD = $(HB) $(PRGFLAGS) $(PRGINCLUDES) -o$@ $^
CC_CMD = $(CC) $(CFLAGS) $(CINCLUDES) -o $@ $^
include mak/rules1.mak
include mak/rules2.mak
include mak/modules9.mak