Browse Source

* Switched winceunits package to fpmake building

git-svn-id: trunk@20101 -
joost 13 years ago
parent
commit
7a69b2cd37

+ 5 - 0
packages/Makefile

@@ -10121,3 +10121,8 @@ objcrtl_shared: fpmkunit_shared
 objcrtl_smart: fpmkunit_smart
 objcrtl_debug: fpmkunit_debug
 objcrtl_release: fpmkunit_release
+winceunits_all: fpmkunit_all
+winceunits_shared: fpmkunit_shared
+winceunits_smart: fpmkunit_smart
+winceunits_debug: fpmkunit_debug
+winceunits_release: fpmkunit_release

+ 6 - 0
packages/Makefile.fpc

@@ -842,3 +842,9 @@ objcrtl_smart: fpmkunit_smart
 objcrtl_debug: fpmkunit_debug
 objcrtl_release: fpmkunit_release
 
+winceunits_all: fpmkunit_all
+winceunits_shared: fpmkunit_shared
+winceunits_smart: fpmkunit_smart
+winceunits_debug: fpmkunit_debug
+winceunits_release: fpmkunit_release
+

+ 1 - 0
packages/fpmake_add.inc

@@ -99,6 +99,7 @@
   add_users;
   add_utmp;
   add_uuid;
+  add_winceunits;
   add_winunits_base;
   add_winunits_jedi;
   add_x11;

+ 6 - 0
packages/fpmake_proc.inc

@@ -592,6 +592,12 @@ begin
 {$include uuid/fpmake.pp}
 end;
 
+procedure add_winceunits;
+begin
+  with Installer do
+{$include winceunits/fpmake.pp}
+end;
+
 procedure add_winunits_base;
 begin
   with Installer do

File diff suppressed because it is too large
+ 114 - 687
packages/winceunits/Makefile


+ 57 - 21
packages/winceunits/Makefile.fpc

@@ -1,40 +1,76 @@
 #
-#   Makefile.fpc for WinCE Units
+#   Makefile.fpc for running fpmake
 #
 
 [package]
 name=winceunits
 version=2.7.1
 
-[target]
-units_wince=comobj buildwinceunits
-implicitunits_wince=aygshell commctrl commdlg iphlpapi notify oleauto power shellapi simmgr tapi \
-                    gpsapi todaycmn windbase cesync gx winioctl msgqueue pm service htmlctrl \
-                    sipapi cpl bt_api bt_sdp bthapi bthutil pimstore ril sms ws2bth keybd nled \
-                    phone connmgr devload devmgmt mmreg mmsystem msacm wininet ras raserror \
-                    sip projects wap tsp extapi imm \
-                    activex ole2 comconst rapitypes tlhelp32
-
-units_win32=rapi cesync rapitypes
-
-rsts=comconst
+[require]
+packages=rtl fpmkunit
 
 [install]
-buildunit=buildwinceunits
 fpcpackage=y
 
 [default]
 fpcdir=../..
 
-[compiler]
-options=-Ur
-sourcedir=src
-
 [prerules]
-WINDIR=../winunits-base/src
+FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT))
+ifdef OS_TARGET
+FPC_TARGETOPT+=--os=$(OS_TARGET)
+endif
+ifdef CPU_TARGET
+FPC_TARGETOPT+=--cpu=$(CPU_TARGET)
+endif
+LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT)
 
 [rules]
 .NOTPARALLEL:
 
-comobj$(PPUEXT) : $(WINDIR)/comobj.pp $(WINDIR)/activex.pp
-        $(COMPILER) $(WINDIR)/comobj.pp
+fpmake: fpmake.pp
+	$(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT)
+all:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu
+smart:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX
+release:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE
+debug:	fpmake
+	$(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG
+# If no fpmake exists and (dist)clean is called, do not try to build fpmake, it will
+# most often fail because the dependencies are cleared.
+# In case of a clean, simply do nothing
+ifeq ($(FPMAKE_BIN_CLEAN),)
+clean:	
+else
+clean:	
+	$(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+# In case of a distclean, perform an 'old'-style distclean. This to avoid problems
+# when the package is compiled using fpcmake prior to running this clean using fpmake
+ifeq ($(FPMAKE_BIN_CLEAN),)
+distclean:	$(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall
+else
+distclean:	
+ifdef inUnix
+        { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi;  }
+else
+        $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
+endif
+	-$(DEL) $(LOCALFPMAKE)
+endif
+install:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR)
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR)
+endif
+# distinstall also installs the example-sources
+distinstall:	fpmake
+ifdef UNIXHier
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
+else
+	$(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR)  --unitinstalldir=$(INSTALL_UNITDIR) -ie
+endif
+

Some files were not shown because too many files changed in this diff