mirror of
https://github.com/python/cpython.git
synced 2025-08-04 17:08:35 +00:00
bpo-26317: Support OBJC and OBJCXX configure command line variables (GH-20176)
Add support to the configure script for OBJC and OBJCXX command line options so that the macOS builds can use the clang compiler for the macOS-specific Objective C source files. This allows third-party compilers, like GNU gcc, to be used to build the rest of the project since some of the Objective C system header files are not compilable by GNU gcc. Co-authored-by: Jeffrey Kintscher <websurfer@surf2c.net> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
This commit is contained in:
parent
c444108dd6
commit
0da5466650
10 changed files with 670 additions and 15 deletions
|
@ -21,6 +21,7 @@ PYTHONFRAMEWORK=@PYTHONFRAMEWORK@
|
|||
PYTHONFRAMEWORKIDENTIFIER=@PYTHONFRAMEWORKIDENTIFIER@
|
||||
LIPO_32BIT_FLAGS=@LIPO_32BIT_FLAGS@
|
||||
CC=@CC@
|
||||
OBJC=@OBJC@
|
||||
MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@
|
||||
export MACOSX_DEPLOYMENT_TARGET
|
||||
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
CC=@CC@
|
||||
LD=@CC@
|
||||
OBJC=@OBJC@
|
||||
OBJCFLAFS=@OBJCFLAGS@
|
||||
BASECFLAGS=@BASECFLAGS@
|
||||
OPT=@OPT@
|
||||
CFLAGS=@CFLAGS@ $(BASECFLAGS) $(OPT)
|
||||
|
@ -52,25 +54,25 @@ Python\ Launcher.app: Info.plist \
|
|||
cp -R $(srcdir)/English.lproj "Python Launcher.app/Contents/Resources"
|
||||
|
||||
FileSettings.o: $(srcdir)/FileSettings.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/FileSettings.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/FileSettings.m
|
||||
|
||||
MyAppDelegate.o: $(srcdir)/MyAppDelegate.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/MyAppDelegate.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/MyAppDelegate.m
|
||||
|
||||
MyDocument.o: $(srcdir)/MyDocument.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/MyDocument.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/MyDocument.m
|
||||
|
||||
PreferencesWindowController.o: $(srcdir)/PreferencesWindowController.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/PreferencesWindowController.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/PreferencesWindowController.m
|
||||
|
||||
doscript.o: $(srcdir)/doscript.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/doscript.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/doscript.m
|
||||
|
||||
main.o: $(srcdir)/main.m
|
||||
$(CC) $(CFLAGS) -o $@ -c $(srcdir)/main.m
|
||||
$(OBJC) $(CFLAGS) -o $@ -c $(srcdir)/main.m
|
||||
|
||||
Python\ Launcher: $(OBJECTS)
|
||||
$(CC) $(LDFLAGS) -o "Python Launcher" $(OBJECTS) -framework AppKit -framework Carbon
|
||||
$(OBJC) $(LDFLAGS) -o "Python Launcher" $(OBJECTS) -framework AppKit -framework Carbon
|
||||
|
||||
Info.plist: $(srcdir)/Info.plist.in
|
||||
sed 's/%VERSION%/'"`$(RUNSHARED) $(BUILDPYTHON) -c 'import platform; print(platform.python_version())'`"'/g' < $(srcdir)/Info.plist.in > Info.plist
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue