blob: 9ec443cad5d8bad5f3533ea940081db382024bac [file] [log] [blame]
##===- Makefile.f2c ----------------------------------------*- Makefile -*-===##
#
# The LLVM Compiler Infrastructure
#
# This file is distributed under the University of Illinois Open Source
# License. See LICENSE.TXT for details.
#
#===------------------------------------------------------------------------===#
#
# Enable running Fortran programs with LLVM by using f2c to convert to C and
# link with libf2c, but only until we have a Fortran front-end.
#
##===----------------------------------------------------------------------===##
# FIXME: This would be autoconf'd
include $(LEVEL)/Makefile.config
# Make sure the correct targets come first.
ifdef TEST
test::
else
all::
endif
ifneq ($(USE_F2C),1)
all test::
echo "The f2c program was not found"
exit 1
endif
.PRECIOUS: %.c
clean::
rm -f $(Source:%.f=%.c)
%.c: %.f
$(F2C) $< > /dev/null 2>&1
CPPFLAGS = -I$(F2C_INC)
LDFLAGS += -L$(F2C_LIB) -lf2c
# 'main' is defined in the f2c runtime library. The function exported from the
# program is named MAIN__
EXTRA_LINKTIME_OPT_FLAGS += -internalize-public-api-list=MAIN__