# Top level configure fragment for GNU Objective-C++.
#   Copyright (C) 2005-2025 Free Software Foundation, Inc.
#   Contributed by Ziemowit Laski <zlaski@apple.com>

#This file is part of GCC.

#GCC is free software; you can redistribute it and/or modify
#it under the terms of the GNU General Public License as published by
#the Free Software Foundation; either version 3, or (at your option)
#any later version.

#GCC is distributed in the hope that it will be useful,
#but WITHOUT ANY WARRANTY; without even the implied warranty of
#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#GNU General Public License for more details.

#You should have received a copy of the GNU General Public License
#along with GCC; see the file COPYING3.  If not see
#<http://www.gnu.org/licenses/>.

# Configure looks for the existence of this file to auto-config each language.
# We define several parameters used by configure:
#
# language	- name of language as it would appear in $(LANGUAGES)
# compilers	- value to add to $(COMPILERS)

language="obj-c++"

compilers="cc1objplus\$(exeext)"

# Per GCC Steering Committee.
build_by_default="no"

# By building the Objective-C and C++ front-ends, we will get
# the object files we need, along with the libraries (libstdc++,
# libobjc).
lang_requires="objc c++"
subdir_requires="objc cp"

# When you add to this gtfiles list a header which comes from a
# directory belonging to another language (ie, C++ or ObjC), you need
# to also edit gengtype.cc adding a special rule for the header to
# avoid having the GC stuff from that header being added to gtype-cp.h
# or gtype-objc.h.

# Get the C++ FE's gtfiles list.  Do this in a subshell, so we can
# extract exactly the gtfiles var, but munge cp-lang.cc into objcp-lang.cc.
gtfiles="$(. $srcdir/cp/config-lang.in ; \
  echo $gtfiles | sed 's+/cp/cp-lang.cc +/objcp/objcp-lang.cc +')"

# Now add our special bits to it.  Please keep this list sorted.
gtfiles="$gtfiles \
\$(srcdir)/objc/objc-act.h \
\$(srcdir)/objc/objc-map.h \
\$(srcdir)/objc/objc-act.cc \
\$(srcdir)/objc/objc-gnu-runtime-abi-01.cc \
\$(srcdir)/objc/objc-next-runtime-abi-01.cc \
\$(srcdir)/objc/objc-next-runtime-abi-02.cc \
\$(srcdir)/objc/objc-runtime-shared-support.cc \
"

