Skip to content

Commit 073c106

Browse files
committed
Add option --without-cloop-generation
Good for builds not changing the original code, as the generated files are committed
1 parent 81cfcf9 commit 073c106

8 files changed

Lines changed: 52 additions & 1 deletion

File tree

builds/posix/Makefile.in

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ RPL_AWK_SRC=$(MISC)/def_awk.c
135135
RPL_GREP=$(GEN_ROOT)/isc_grep
136136
RPL_GREP_SRC=$(MISC)/isc_grep.c
137137

138+
ifeq ($(CLOOP_GENERATION_FLG),Y)
138139
updateCloopInterfaces : $(API_H_FILE) $(API_PAS_FILE) $(API_C_H_FILE)
139140

140141
$(API_H_FILE): $(IDL_FILE)
@@ -185,6 +186,7 @@ $(API_PAS_FILE): $(IDL_FILE) $(PASCAL_SOURCES) $(TMP_FUNCS_PAS)
185186
else \
186187
rm -f $(API_PAS_TMP_FILE); \
187188
fi
189+
endif
188190

189191
updateBuildNum : $(SRC_ROOT)/jrd/build_no.h $(GEN_ROOT)/Make.Version
190192

@@ -205,6 +207,7 @@ ifeq ($(CLIENT_ONLY_FLG),N)
205207
PROGRAM=$(GEN_ROOT)/extern/btyacc/btyacc OBJ_DIR=$(ROOT)/temp/extern/btyacc
206208
endif
207209

210+
ifeq ($(CLOOP_GENERATION_FLG),Y)
208211
mkdir -p $(GEN_ROOT)/$(TARGET)/cloop
209212

210213
ifeq ($(PLATFORM),DARWIN)
@@ -216,6 +219,7 @@ else
216219
endif
217220
cd $(GEN_ROOT)/$(TARGET)/cloop && \
218221
cmake --build .
222+
endif
219223

220224
mkdir -p $(ROOT)/temp/extern/decNumber $(GEN_ROOT)/extern/decNumber
221225
CC="$(CC)" CFLAGS="$(CFLAGS)" AR="$(AR)" $(MAKE) -C $(SRCDIR)/extern/decNumber \
@@ -365,7 +369,9 @@ master_process:
365369
$(MAKE) updateBuildNum
366370
$(MAKE) export_lists
367371
$(MAKE) external
372+
ifeq ($(CLOOP_GENERATION_FLG),Y)
368373
$(MAKE) updateCloopInterfaces
374+
endif
369375
$(MAKE) rest
370376
$(MAKE) yvalve
371377
ifeq ($(CLIENT_ONLY_FLG),Y)
@@ -401,7 +407,9 @@ cross1:
401407
$(MAKE) updateBuildNum
402408
$(MAKE) export_lists
403409
$(MAKE) external
410+
ifeq ($(CLOOP_GENERATION_FLG),Y)
404411
$(MAKE) updateCloopInterfaces
412+
endif
405413
ifeq ($(CLIENT_ONLY_FLG),N)
406414
$(MAKE) boot
407415
$(MAKE) yvalve
@@ -522,7 +530,9 @@ client_static_process:
522530
$(MAKE) updateBuildNum
523531
$(MAKE) export_lists
524532
$(MAKE) external
533+
ifeq ($(CLOOP_GENERATION_FLG),Y)
525534
$(MAKE) updateCloopInterfaces
535+
endif
526536
$(MAKE) rest
527537
$(MAKE) $(LIBFIREBIRD_STATIC)
528538
$(MAKE) include_generic
@@ -927,7 +937,9 @@ clean_vers:
927937
clean_misc:
928938
$(RM) security.tmp test.header.txt
929939
$(RM) $(TMP_FUNCS_PAS) $(RPL_AWK) $(RPL_GREP)
940+
ifeq ($(CLOOP_GENERATION_FLG),Y)
930941
$(TOUCH) -c -t 200001010000 $(API_H_FILE) $(API_PAS_FILE)
942+
endif
931943

932944

933945
ifeq ($(EDITLINE_FLG),Y)

builds/posix/make.defaults

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ EXA_ROOT?=$(SRCDIR)/examples
5050
IsCross=@IS_CROSS@
5151
TOMMATH_BUILD_FLG=@TOMMATH_BUILD@
5252
TOMCRYPT_BUILD_FLG=@TOMCRYPT_BUILD@
53+
CLOOP_GENERATION_FLG=@CLOOP_GENERATION@
5354
RE2_BUILD_FLG=@RE2_BUILD@
5455
SYSTEM_BOOST_FLG=@SYSTEM_BOOST@
5556

builds/win32/make_boot.bat

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ for %%v in ( alice auth burp dsql gpre isql jrd misc msgs examples yvalve utilit
2929

3030
@mkdir %FB_BIN_DIR%\tzdata 2>nul
3131

32-
call :interfaces
32+
@if not defined FBBUILD_WITHOUT_CLOOP_GENERATION call :interfaces
3333
if "!ERRLEV!"=="1" goto :END
3434

3535
call :LibTom
@@ -205,6 +205,7 @@ goto :EOF
205205
::===================
206206
:: Build CLOOP and generate interface headers
207207
:interfaces
208+
@if defined FBBUILD_WITHOUT_CLOOP_GENERATION goto :EOF
208209
@echo.
209210
@echo Building CLOOP and generating interfaces...
210211
@mkdir %FB_GEN_DIR%\%FB_TARGET_PLATFORM%\cloop 2>nul

builds/win32/run_all.bat

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ set FBBUILD_BUILD_ONLY=0
1212
set FBBUILD_KITS=ISX ZIP
1313
set FBBUILD_TEST_ONLY=
1414
set FBBUILD_WITHOUT_TOMCRYPT=
15+
set FBBUILD_WITHOUT_CLOOP_GENERATION=
1516
set FB2_SNAPSHOT=
1617

1718
::Check if on-line help is required
@@ -84,6 +85,8 @@ goto :END
8485
@echo.
8586
@echo WITHOUT_TOMCRYPT - omit TomCrypt and ChaCha from CLIENT_ONLY=STATIC builds
8687
@echo.
88+
@echo WITHOUT_CLOOP_GENERATION - omit Cloop build and interface generation
89+
@echo.
8790
@echo REALCLEAN - Run CLEAN_ALL.BAT REALCLEAN
8891
@echo This will do a deeper clean.
8992
@echo Recommended for multi-platform builds

builds/win32/setenvvar.bat

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,11 @@ if /I "%~1"=="WITHOUT_TOMCRYPT" (
3131
shift /1
3232
goto :parse_args
3333
)
34+
if /I "%~1"=="WITHOUT_CLOOP_GENERATION" (
35+
set FBBUILD_WITHOUT_CLOOP_GENERATION=1
36+
shift /1
37+
goto :parse_args
38+
)
3439
if /I "%~1"=="CLEAN" (
3540
set FB_CLEAN=:rebuild
3641
shift /1
@@ -288,6 +293,7 @@ goto :END
288293
@echo vs_ver=%VS_VER%
289294
@echo FB_VSCOMNTOOLS=%FB_VSCOMNTOOLS%
290295
@echo platform=%FB_TARGET_PLATFORM%
296+
@if defined FBBUILD_WITHOUT_CLOOP_GENERATION echo without_cloop_generation=yes
291297
@if /I "%FB_CLIENT_ONLY%"=="STATIC" (
292298
@echo fbclient_static_config=%FB_STATIC_CONFIG%
293299
@if defined FBBUILD_WITHOUT_TOMCRYPT echo without_tomcrypt=yes

configure.ac

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -601,6 +601,16 @@ AC_ARG_WITH(tomcrypt,
601601
esac])
602602
AC_SUBST(WITH_TOMCRYPT)
603603

604+
CLOOP_GENERATION=Y
605+
AC_ARG_WITH(cloop-generation,
606+
[ --without-cloop-generation do not build cloop or update generated interface files (default=no)],
607+
[case "$withval" in
608+
yes) CLOOP_GENERATION=Y;;
609+
no) CLOOP_GENERATION=N;;
610+
*) AC_MSG_ERROR(bad value '${withval}' for --with-cloop-generation);;
611+
esac])
612+
AC_SUBST(CLOOP_GENERATION)
613+
604614
TOMCRYPT_BUILD=N
605615
AC_ARG_WITH(builtin-tomcrypt,
606616
[ --with-builtin-tomcrypt build libtomcrypt library from firebird tree],
@@ -1537,6 +1547,12 @@ echo " Service name : $FB_SERVICE_NAME"
15371547
echo " Service port : $FB_SERVICE_PORT"
15381548

15391549
echo " GPRE modules : c_cxx.cpp$GPRE_LANGUAGE_MODULES"
1550+
1551+
case $CLOOP_GENERATION in
1552+
Y) echo " Cloop generation : enabled";;
1553+
N) echo " Cloop generation : disabled";;
1554+
esac
1555+
15401556
echo
15411557

15421558
echo " Install Dir : $prefix"

doc/README.build.msvc.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ <h4>4.1.-Standard build</h4>
108108
<li>make_boot.bat [DEBUG] [CLEAN]</li>
109109
<li>make_all.bat [DEBUG] [CLEAN]</li>
110110
</ol>
111+
<li>To skip the Cloop build and generated interface updates, pass <code>WITHOUT_CLOOP_GENERATION</code> to <code>run_all.bat</code>.</li>
111112
</ol>
112113
<ul>
113114
<p>After the build finish, an output directory with the binaries is created below your firebird directory.</p>

doc/README.build.posix.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -359,6 +359,17 @@ <h2>
359359
no
360360
</td>
361361
</tr>
362+
<tr>
363+
<td class="code">
364+
--without-cloop-generation
365+
</td>
366+
<td>
367+
Do not build Cloop or update generated interface files
368+
</td>
369+
<td class="code">
370+
no
371+
</td>
372+
</tr>
362373
<tr>
363374
<td class="code">
364375
--enable-raw-devices

0 commit comments

Comments
 (0)