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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
|
$NetBSD: patch-makefile,v 1.7 2022/04/03 14:33:42 rhialto Exp $
Exclude -flto for gcc 4.1.3 (used in NetBSD/vax 6)
Exclude -flto for clang on NetBSD
Exclude -flto for gcc 4.4.7 (Used in DragonFly 2.13 - 3.1)
NO_LTO=1 is in effect for gcc and clang, except Darwin.
Fix png16 detection.
Let INCLUDES and LIBRARIES be the sole source for INCPATH and LIBPATH,
to avoid seeing non-pkgsrc libraries (except MacOS platform).
--- makefile.orig 2022-04-01 19:37:11.000000000 +0000
+++ makefile
@@ -307,7 +307,7 @@ ifeq (${WIN32},) #*nix Environments (&&
$(shell git log -1 --pretty="SIM_GIT_COMMIT_ID %H$(GIT_EXTRA_FILES)%nSIM_GIT_COMMIT_TIME $(isodate)" >.git-commit-id)
endif
endif
- LTO_EXCLUDE_VERSIONS =
+ LTO_EXCLUDE_VERSIONS = 4.1.3 4.4.7 4.8.3 4.8.4 4.8.5 5.3.0 5.4.0
PCAPLIB = pcap
ifeq (agcc,$(findstring agcc,${GCC})) # Android target build?
OS_CCDEFS += -D_GNU_SOURCE -DSIM_ASYNCH_IO
@@ -348,16 +348,16 @@ ifeq (${WIN32},) #*nix Environments (&&
ifeq (Darwin,$(OSTYPE))
OSNAME = OSX
LIBEXT = dylib
- ifneq (include,$(findstring include,$(UNSUPPORTED_BUILD)))
- INCPATH:=$(shell LANG=C; ${GCC} -x c -v -E /dev/null 2>&1 | grep -A 10 '> search starts here' | grep '^ ' | grep -v 'framework directory' | tr -d '\n')
- endif
+ #ifneq (include,$(findstring include,$(UNSUPPORTED_BUILD)))
+ INCPATH+=$(shell LANG=C; ${GCC} -x c -v -E /dev/null 2>&1 | grep -A 10 '> search starts here' | grep '^ ' | grep -v 'framework directory' | tr -d '\n')
+ #endif
ifeq (incopt,$(shell if ${TEST} -d /opt/local/include; then echo incopt; fi))
- INCPATH += /opt/local/include
- OS_CCDEFS += -I/opt/local/include
+ # INCPATH += /opt/local/include
+ # OS_CCDEFS += -I/opt/local/include
endif
ifeq (libopt,$(shell if ${TEST} -d /opt/local/lib; then echo libopt; fi))
- LIBPATH += /opt/local/lib
- OS_LDFLAGS += -L/opt/local/lib
+ # LIBPATH += /opt/local/lib
+ # OS_LDFLAGS += -L/opt/local/lib
endif
ifeq (HomeBrew,$(or $(shell if ${TEST} -d /usr/local/Cellar; then echo HomeBrew; fi),$(shell if ${TEST} -d /opt/homebrew/Cellar; then echo HomeBrew; fi)))
ifeq (local,$(shell if $(TEST) -d /usr/local/Cellar; then echo local; fi))
@@ -365,8 +365,8 @@ ifeq (${WIN32},) #*nix Environments (&&
else
HBPATH = /opt/homebrew
endif
- INCPATH += $(foreach dir,$(wildcard $(HBPATH)/Cellar/*/*),$(realpath $(dir)/include))
- LIBPATH += $(foreach dir,$(wildcard $(HBPATH)/Cellar/*/*),$(realpath $(dir)/lib))
+ # INCPATH += $(foreach dir,$(wildcard $(HBPATH)/Cellar/*/*),$(realpath $(dir)/include))
+ # LIBPATH += $(foreach dir,$(wildcard $(HBPATH)/Cellar/*/*),$(realpath $(dir)/lib))
endif
else
ifeq (Linux,$(OSTYPE))
@@ -376,15 +376,15 @@ ifeq (${WIN32},) #*nix Environments (&&
ifneq (lib,$(findstring lib,$(UNSUPPORTED_BUILD)))
ifeq (Android,$(shell uname -o))
ifneq (,$(shell if ${TEST} -d ${PREFIX}/lib; then echo prefixlib; fi))
- LIBPATH += ${PREFIX}/lib
+ # LIBPATH += ${PREFIX}/lib
endif
ifneq (,$(shell if ${TEST} -d /system/lib; then echo systemlib; fi))
- LIBPATH += /system/lib
+ # LIBPATH += /system/lib
endif
- LIBPATH += $(LD_LIBRARY_PATH)
+ # LIBPATH += $(LD_LIBRARY_PATH)
endif
ifeq (ldconfig,$(shell if ${TEST} -e /sbin/ldconfig; then echo ldconfig; fi))
- LIBPATH := $(sort $(foreach lib,$(shell /sbin/ldconfig -p | grep ' => /' | sed 's/^.* => //'),$(dir $(lib))))
+ # LIBPATH := $(sort $(foreach lib,$(shell /sbin/ldconfig -p | grep ' => /' | sed 's/^.* => //'),$(dir $(lib))))
endif
endif
LIBSOEXT = so
@@ -393,7 +393,7 @@ ifeq (${WIN32},) #*nix Environments (&&
ifeq (SunOS,$(OSTYPE))
OSNAME = Solaris
ifneq (lib,$(findstring lib,$(UNSUPPORTED_BUILD)))
- LIBPATH := $(shell LANG=C; crle | grep 'Default Library Path' | awk '{ print $$5 }' | sed 's/:/ /g')
+ # LIBPATH := $(shell LANG=C; crle | grep 'Default Library Path' | awk '{ print $$5 }' | sed 's/:/ /g')
endif
LIBEXT = so
OS_LDFLAGS += -lsocket -lnsl
@@ -402,27 +402,27 @@ ifeq (${WIN32},) #*nix Environments (&&
OS_CCDEFS += -I/opt/sfw/include
endif
ifeq (libsfw,$(shell if ${TEST} -d /opt/sfw/lib; then echo libsfw; fi))
- LIBPATH += /opt/sfw/lib
- OS_LDFLAGS += -L/opt/sfw/lib -R/opt/sfw/lib
+ # LIBPATH += /opt/sfw/lib
+ # OS_LDFLAGS += -L/opt/sfw/lib -R/opt/sfw/lib
endif
OS_CCDEFS += -D_LARGEFILE_SOURCE
else
ifeq (cygwin,$(OSTYPE))
# use 0readme_ethernet.txt documented Windows pcap build components
- INCPATH += ../windows-build/winpcap/WpdPack/Include
- LIBPATH += ../windows-build/winpcap/WpdPack/Lib
+ # INCPATH += ../windows-build/winpcap/WpdPack/Include
+ # LIBPATH += ../windows-build/winpcap/WpdPack/Lib
PCAPLIB = wpcap
LIBEXT = a
else
ifneq (,$(findstring AIX,$(OSTYPE)))
OS_LDFLAGS += -lm -lrt
ifeq (incopt,$(shell if ${TEST} -d /opt/freeware/include; then echo incopt; fi))
- INCPATH += /opt/freeware/include
- OS_CCDEFS += -I/opt/freeware/include
+ # INCPATH += /opt/freeware/include
+ # OS_CCDEFS += -I/opt/freeware/include
endif
ifeq (libopt,$(shell if ${TEST} -d /opt/freeware/lib; then echo libopt; fi))
- LIBPATH += /opt/freeware/lib
- OS_LDFLAGS += -L/opt/freeware/lib
+ # LIBPATH += /opt/freeware/lib
+ # OS_LDFLAGS += -L/opt/freeware/lib
endif
else
ifneq (,$(findstring Haiku,$(OSTYPE)))
@@ -433,9 +433,9 @@ ifeq (${WIN32},) #*nix Environments (&&
ifeq ($(HAIKU_ARCH),x86_gcc2)
$(error Unsupported arch x86_gcc2. Run setarch x86 and retry)
endif
- INCPATH := $(shell findpaths -e -a $(HAIKU_ARCH) B_FIND_PATH_HEADERS_DIRECTORY)
- INCPATH += $(shell findpaths -e B_FIND_PATH_HEADERS_DIRECTORY posix)
- LIBPATH := $(shell findpaths -e -a $(HAIKU_ARCH) B_FIND_PATH_DEVELOP_LIB_DIRECTORY)
+ # INCPATH := $(shell findpaths -e -a $(HAIKU_ARCH) B_FIND_PATH_HEADERS_DIRECTORY)
+ # INCPATH += $(shell findpaths -e B_FIND_PATH_HEADERS_DIRECTORY posix)
+ # LIBPATH := $(shell findpaths -e -a $(HAIKU_ARCH) B_FIND_PATH_DEVELOP_LIB_DIRECTORY)
OS_LDFLAGS += -lnetwork
else
ifeq (,$(findstring NetBSD,$(OSTYPE)))
@@ -443,7 +443,7 @@ ifeq (${WIN32},) #*nix Environments (&&
LDSEARCH :=$(shell LANG=C; ldconfig -r | grep 'search directories' | awk '{print $$3}' | sed 's/:/ /g')
endif
ifneq (,$(LDSEARCH))
- LIBPATH := $(LDSEARCH)
+ # LIBPATH := $(LDSEARCH)
else
ifeq (,$(strip $(LPATH)))
$(info *** Warning ***)
@@ -455,22 +455,22 @@ ifeq (${WIN32},) #*nix Environments (&&
$(info *** Warning *** variable.)
$(info *** Warning ***)
else
- LIBPATH = $(subst :, ,$(LPATH))
+ # LIBPATH = $(subst :, ,$(LPATH))
endif
endif
- OS_LDFLAGS += $(patsubst %,-L%,${LIBPATH})
+ # OS_LDFLAGS += $(patsubst %,-L%,${LIBPATH})
endif
endif
endif
ifeq (usrpkglib,$(shell if ${TEST} -d /usr/pkg/lib; then echo usrpkglib; fi))
- LIBPATH += /usr/pkg/lib
- INCPATH += /usr/pkg/include
- OS_LDFLAGS += -L/usr/pkg/lib -R/usr/pkg/lib
- OS_CCDEFS += -I/usr/pkg/include
+ # LIBPATH += /usr/pkg/lib
+ # INCPATH += /usr/pkg/include
+ # OS_LDFLAGS += -L/usr/pkg/lib -R/usr/pkg/lib
+ # OS_CCDEFS += -I/usr/pkg/include
endif
ifeq (/usr/local/lib,$(findstring /usr/local/lib,${LIBPATH}))
- INCPATH += /usr/local/include
- OS_CCDEFS += -I/usr/local/include
+ # INCPATH += /usr/local/include
+ # OS_CCDEFS += -I/usr/local/include
endif
ifneq (,$(findstring NetBSD,$(OSTYPE))$(findstring FreeBSD,$(OSTYPE))$(findstring AIX,$(OSTYPE)))
LIBEXT = so
@@ -497,12 +497,12 @@ ifeq (${WIN32},) #*nix Environments (&&
endif
ifeq (,$(filter /lib/,$(LIBPATH)))
ifeq (existlib,$(shell if $(TEST) -d /lib/; then echo existlib; fi))
- LIBPATH += /lib/
+ # LIBPATH += /lib/
endif
endif
ifeq (,$(filter /usr/lib/,$(LIBPATH)))
ifeq (existusrlib,$(shell if $(TEST) -d /usr/lib/; then echo existusrlib; fi))
- LIBPATH += /usr/lib/
+ # LIBPATH += /usr/lib/
endif
endif
export CPATH = $(subst $() $(),:,$(INCPATH))
@@ -611,9 +611,9 @@ ifeq (${WIN32},) #*nix Environments (&&
OS_CCDEFS += -DHAVE_UTIME
endif
ifneq (,$(call find_include,png))
- ifneq (,$(call find_lib,png))
+ ifneq (,$(call find_lib,png16))
OS_CCDEFS += -DHAVE_LIBPNG
- OS_LDFLAGS += -lpng
+ OS_LDFLAGS += -lpng16
$(info using libpng: $(call find_lib,png) $(call find_include,png))
ifneq (,$(call find_include,zlib))
ifneq (,$(call find_lib,z))
@@ -803,7 +803,7 @@ ifeq (${WIN32},) #*nix Environments (&&
NETWORK_FEATURES = - dynamic networking support using libpcap components from www.tcpdump.org and locally installed libpcap.${LIBEXT}
$(info using libpcap: $(call find_include,pcap))
else
- LIBPATH += /usr/local/lib
+ # LIBPATH += /usr/local/lib
LIBEXT = a
ifneq (,$(call find_lib,$(PCAPLIB)))
$(info using libpcap: $(call find_lib,$(PCAPLIB)) $(call find_include,pcap))
@@ -1198,11 +1198,11 @@ ifneq (,$(UNSUPPORTED_BUILD))
endif
ifneq ($(DEBUG),)
CFLAGS_G = -g -ggdb -g3
- CFLAGS_O = -O0
+ CFLAGS_O += -O0
BUILD_FEATURES = - debugging support
else
ifneq (,$(findstring clang,$(COMPILER_NAME))$(findstring LLVM,$(COMPILER_NAME)))
- CFLAGS_O = -O2 -fno-strict-overflow
+ CFLAGS_O += -O2 -fno-strict-overflow
GCC_OPTIMIZERS_CMD = ${GCC} --help
NO_LTO = 1
else
@@ -1210,7 +1210,7 @@ else
ifeq (Darwin,$(OSTYPE))
CFLAGS_O += -O4 -flto -fwhole-program
else
- CFLAGS_O := -O2
+ CFLAGS_O += -O2
endif
endif
LDFLAGS_O =
|