ソースを参照

* The Makefile.fpc is adapted and the Makefile re-generated so that fpmake is
used to compile the fcl-web package. The old Makefile.fpc is copied to
Makefile.org so it can be used for recovery when building fails.

git-svn-id: trunk@17215 -

joost 14 年 前
コミット
86c8c6c4eb
4 ファイル変更484 行追加1717 行削除
  1. 1 0
      .gitattributes
  2. 423 1702
      packages/fcl-web/Makefile
  3. 30 15
      packages/fcl-web/Makefile.fpc
  4. 30 0
      packages/fcl-web/Makefile.org

+ 1 - 0
.gitattributes

@@ -2297,6 +2297,7 @@ packages/fcl-res/xml/versiontypes.xml svneol=native#text/plain
 packages/fcl-res/xml/winpeimagereader.xml svneol=native#text/plain
 packages/fcl-web/Makefile svneol=native#text/plain
 packages/fcl-web/Makefile.fpc svneol=native#text/plain
+packages/fcl-web/Makefile.org svneol=native#text/plain
 packages/fcl-web/Makefile_fpmake.fpc svneol=native#text/plain
 packages/fcl-web/examples/jsonrpc/demo1/README.txt svneol=native#text/plain
 packages/fcl-web/examples/jsonrpc/demo1/demo.lpi svneol=native#text/plain

ファイルの差分が大きいため隠しています
+ 423 - 1702
packages/fcl-web/Makefile


+ 30 - 15
packages/fcl-web/Makefile.fpc

@@ -6,25 +6,40 @@
 name=fcl-web
 version=2.5.1
 
-[target]
-dirs=src/base src/webdata src/jsonrpc
-
 [require]
-packages=fcl-base fcl-xml fcl-db fcl-json fcl-net fcl-process
-
-[compiler]
-options=-S2h
-
-[install]
-fpcpackage=y
+packages=rtl fpmkunit
 
 [default]
 fpcdir=../..
 
-[rules]
-.NOTPARALLEL:
-distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean 
-clean: $(addsuffix _clean,$(TARGET_DIRS)) fpc_clean
-cleanall: $(addsuffix _cleanall,$(TARGET_DIRS)) fpc_cleanall
+[prerules]
+# If no fpmake exists and clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared. So simply skip the
+# clean by replacing the command with 'echo'
+FPMAKE_BIN_CLEAN=$(wildcard ./fpmake$(SRCEXEEXT))
+ifeq ($(FPMAKE_BIN_CLEAN),)
+FPMAKE_BIN_CLEAN=$(ECHO)
+endif
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
 
+[rules]
+fpmake: fpmake.pp
+	$(FPC) fpmake.pp $(FPCOPT)
+all:	fpmake
+	./fpmake build --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+smart:	fpmake
+	./fpmake build --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o "-XX -CX"
+release:	fpmake
+	./fpmake build --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o "-dRELEASE"
+debug:	fpmake
+	./fpmake build --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -o "-dDEBUG"
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+install:	fpmake
+	./fpmake install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(PREFIX)
 

+ 30 - 0
packages/fcl-web/Makefile.org

@@ -0,0 +1,30 @@
+#
+#   Makefile.fpc for TDataSet for FCL
+#
+
+[package]
+name=fcl-web
+version=2.5.1
+
+[target]
+dirs=src/base src/webdata src/jsonrpc
+
+[require]
+packages=fcl-base fcl-xml fcl-db fcl-json fcl-net fcl-process
+
+[compiler]
+options=-S2h
+
+[install]
+fpcpackage=y
+
+[default]
+fpcdir=../..
+
+[rules]
+.NOTPARALLEL:
+distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_distclean 
+clean: $(addsuffix _clean,$(TARGET_DIRS)) fpc_clean
+cleanall: $(addsuffix _cleanall,$(TARGET_DIRS)) fpc_cleanall
+
+

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません