###########################################################################
#
# Makefile system for GILDAS softwares (2003-2017).
#
# Please be careful: element order often matters in makefiles.
#
###########################################################################

ifeq ($(GAG_TARGET_KIND),mingw)
  GAG_USE_STATICLINK = no
endif

include $(gagadmdir)/Makefile.def

###########################################################################

LIB_IDENTITY = gkernel

INTERFACES_DISABLE = yes

LIB_EXPORTS = gkernel_interfaces.mod gkernel_types.mod

LIB_DEPENDS = -lgreg $(GREG_LIB_DEPENDS) 

LIB_F_OBJECTS = gkernel-interfaces.o types.o

ifeq ($(GAG_TARGET_KIND),mingw)
  LIB_C_OBJECTS = gkernel.o

#  LIB_DEPENDS = -lgreg $(GREG_LIB_DEPENDS)

  ADD_LIBS += $(GREG_SYS_LIBS) -lpthread
endif

###########################################################################

include $(gagadmdir)/Makefile.lib

###########################################################################

include $(builddir)/Makefile.deps

# NB: this forces the update of gkernel_interfaces.mod
$(builddir)/gkernel-interfaces.o:		\
    $(execincdir)/gsys_interfaces_public.mod	\
    $(execincdir)/gsys_interfaces_public_c.mod	\
    $(execincdir)/gmath_interfaces_public.mod	\
    $(execincdir)/gwcs_interfaces_public.mod	\
    $(execincdir)/gio_interfaces_public.mod	\
    $(execincdir)/ggui_interfaces_public_c.mod	\
    $(execincdir)/sic_interfaces_public.mod	\
    $(execincdir)/gtv_interfaces_public.mod	\
    $(execincdir)/greg_interfaces_public.mod

# NB: this forces the update of gkernel_types.mod
 $(builddir)/types.o:				\
    $(execincdir)/gsys_types.mod		\
    $(execincdir)/eclass_types.mod		\
    $(execincdir)/gwcs_types.mod		\
    $(execincdir)/sic_types.mod			\
    $(execincdir)/greg_types.mod

###########################################################################
