mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-07-31 21:16:07 +02:00
87 lines
3.1 KiB
Diff
87 lines
3.1 KiB
Diff
This patch enable building all linux supported LCL widget sets.
|
|
|
|
Index: lazarus-0.9.30.4/lcl/Makefile.fpc
|
|
===================================================================
|
|
--- lazarus-0.9.30.4/lcl/Makefile.fpc
|
|
+++ lazarus-0.9.30.4/lcl/Makefile.fpc
|
|
@@ -90,7 +90,7 @@
|
|
[compiler]
|
|
options=-gl $(LCL_DISABLE_CHECKS)
|
|
unittargetdir=units/$(CPU_TARGET)-$(OS_TARGET)
|
|
-unitdir=. $(NONWIN32) forms widgetset
|
|
+unitdir=../packager/units/$(CPU_TARGET)-$(OS_TARGET) ../components/lazutils/lib/$(CPU_TARGET)-$(OS_TARGET) . $(NONWIN32) forms widgetset
|
|
includedir=include
|
|
|
|
[install]
|
|
@@ -101,28 +101,66 @@
|
|
files=$(wildcard $(COMPILER_UNITTARGETDIR)/*$(OEXT)) \
|
|
$(wildcard $(COMPILER_UNITTARGETDIR)/*$(PPUEXT)) \
|
|
$(wildcard $(COMPILER_UNITTARGETDIR)/*$(RSTEXT)) \
|
|
+ $(wildcard $(COMPILER_UNITTARGETDIR)/*.lfm) \
|
|
+ $(wildcard $(COMPILER_UNITTARGETDIR)/*.res) \
|
|
+ $(wildcard $(COMPILER_UNITTARGETDIR)/*.compiled) \
|
|
$(wildcard ./units/*$(OEXT)) $(wildcard ./units/*$(PPUEXT)) $(wildcard ./units/*$(RSTEXT)) \
|
|
$(wildcard widgetset/*$(OEXT)) $(wildcard widgetset/*$(PPUEXT)) $(wildcard widgetset/*$(RSTEXT))\
|
|
$(wildcard *$(OEXT)) $(wildcard *$(PPUEXT)) $(wildcard *$(RSTEXT))
|
|
|
|
-
|
|
[default]
|
|
lcldir=.
|
|
|
|
[rules]
|
|
-.PHONY: cleartarget all
|
|
+.PHONY: help cleartarget lclbase all intf cleanintf cleanlaz cleanall
|
|
|
|
+help:
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) " Important: the LCL requires components/lazutils and packager/registration"
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) " Targets"
|
|
+ @$(ECHO) " all build lclbase and one interface"
|
|
+ @$(ECHO) " clean deletes files that 'all' creates"
|
|
+ @$(ECHO) " lclbase build lclbase"
|
|
+ @$(ECHO) " intf build one lcl interface, selectable via LCL_PLATFORM"
|
|
+ @$(ECHO) " cleanintf delete files that 'intf' creates"
|
|
+ @$(ECHO) " cleanall as 'clean' plus clean for all common interfaces."
|
|
+ @$(ECHO) " Does not clean up cross compiled interfaces."
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) " Examples:"
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) " Compile the lcl with the default interface:"
|
|
+ @$(ECHO) " make clean all"
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) " Compile the interface for the qt widgetset:"
|
|
+ @$(ECHO) " make cleanintf intf LCL_PLATFORM=qt"
|
|
+ @$(ECHO)
|
|
+ @$(ECHO) "Clean up:"
|
|
+ @$(ECHO) " There is no command to clean up all interfaces."
|
|
+ @$(ECHO) " In most cases it is enough to delete the 'units' directory."
|
|
+ @$(ECHO)
|
|
+
|
|
cleartarget:
|
|
-$(DEL) $(COMPILER_UNITTARGETDIR)/alllclunits$(PPUEXT)
|
|
|
|
-all: cleartarget $(COMPILER_UNITTARGETDIR) alllclunits$(PPUEXT) $(TARGET_DIRS)
|
|
+lclbase: cleartarget $(COMPILER_UNITTARGETDIR) alllclunits$(PPUEXT)
|
|
|
|
-cleanlaz: clean
|
|
+intf: $(TARGET_DIRS)
|
|
+
|
|
+cleanintf:
|
|
+ $(MAKE) -C interfaces clean
|
|
+
|
|
+all: lclbase
|
|
+ for WS in gtk2 nogui qt ; do ${MAKE} intf LCL_PLATFORM=$${WS} ; done
|
|
+
|
|
+cleanlaz: cleanall
|
|
+cleanall: clean
|
|
$(MAKE) -C interfaces clean
|
|
$(MAKE) -C interfaces/carbon clean
|
|
$(MAKE) -C interfaces/fpgui clean
|
|
$(MAKE) -C interfaces/gtk clean
|
|
$(MAKE) -C interfaces/gtk2 clean
|
|
+ $(MAKE) -C interfaces/nogui clean
|
|
$(MAKE) -C interfaces/qt clean
|
|
$(MAKE) -C interfaces/win32 clean
|
|
$(MAKE) -C interfaces/wince clean
|