diff --git a/.gitattributes b/.gitattributes index be2bf14d26..f9f1a1738d 100644 --- a/.gitattributes +++ b/.gitattributes @@ -3031,6 +3031,7 @@ lcl/interfaces/carbon/interfaces.pas svneol=native#text/pascal lcl/interfaces/carbon/issues.xml svneol=native#text/xml lcl/interfaces/carbon/mackeycodes.inc svneol=native#text/pascal lcl/interfaces/carbon/opengl.pas svneol=native#text/plain +lcl/interfaces/cocoa/Makefile.fpc svneol=native#text/plain lcl/interfaces/fpgui/Makefile.fpc svneol=native#text/plain lcl/interfaces/fpgui/README.txt svneol=native#text/plain lcl/interfaces/fpgui/fpguiint.pp svneol=native#text/pascal diff --git a/ide/compileroptions.pp b/ide/compileroptions.pp index 9dd6b0bfd5..ba9ee7499e 100644 --- a/ide/compileroptions.pp +++ b/ide/compileroptions.pp @@ -463,7 +463,8 @@ const LCLWidgetLinkerAddition: array[TLCLPlatform] of string = ( ' -k-framework -kcarbon -k-framework -kOpenGL -k''-dylib_file'' -k''/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib''', // carbon '', // qt '', // fpGUI - '' // noGUI + '', // noGUI + ' -k-framework -kCocoa' // Cocoa ); type diff --git a/ide/lazconf.pp b/ide/lazconf.pp index 237cdd4981..1ea4d8fa2e 100644 --- a/ide/lazconf.pp +++ b/ide/lazconf.pp @@ -55,9 +55,10 @@ const 'win32/win64', 'wince (beta)', 'carbon (alpha)', - 'qt (alpha)', + 'qt (beta)', 'fpGUI (pre-alpha)', - 'NoGUI (pre-alpha)' + 'NoGUI (pre-alpha)', + 'cocoa (pre-alpha)' ); diff --git a/lcl/interfacebase.pp b/lcl/interfacebase.pp index a27704d71b..2db1bb606b 100644 --- a/lcl/interfacebase.pp +++ b/lcl/interfacebase.pp @@ -62,7 +62,8 @@ type lpCarbon, lpQT, lpfpGUI, - lpNoGUI + lpNoGUI, + lpCocoa ); TLCLPlatforms = set of TLCLPlatform; @@ -126,7 +127,8 @@ const 'carbon', 'qt', 'fpgui', - 'nogui' + 'nogui', + 'cocoa' ); type diff --git a/lcl/interfaces/cocoa/Makefile.fpc b/lcl/interfaces/cocoa/Makefile.fpc new file mode 100644 index 0000000000..290023791b --- /dev/null +++ b/lcl/interfaces/cocoa/Makefile.fpc @@ -0,0 +1,35 @@ +# $Id: Makefile.fpc 12495 2007-10-16 22:47:51Z mattias $ +# +# Makefile.fpc for Lazarus for Free Pascal +# + +[package] +main=lcl + +[require] +packages=rtl + +[target] +units=interfaces +implicitunits=cocoaint + +[compiler] +options=-gl -dcocoa +unitdir=../../units/$(CPU_TARGET)-$(OS_TARGET) . pascocoa/foundation pascocoa/appkit +unittargetdir=../../units/$(CPU_TARGET)-$(OS_TARGET)/cocoa + +[clean] +files=$(wildcard $(COMPILER_UNITTARGETDIR)/*$(OEXT)) \ + $(wildcard $(COMPILER_UNITTARGETDIR)/*$(PPUEXT)) \ + $(wildcard $(COMPILER_UNITTARGETDIR)/*$(RSTEXT)) \ + $(wildcard *$(OEXT)) $(wildcard *$(PPUEXT)) $(wildcard *$(RSTEXT)) + + +[rules] +.PHONY: cleartarget all + +cleartarget: + -$(DEL) $(COMPILER_UNITTARGETDIR)/interfaces$(PPUEXT) \ + $(COMPILER_UNITTARGETDIR)/interfaces$(OEXT) + +all: cleartarget $(COMPILER_UNITTARGETDIR) interfaces$(PPUEXT)