include ../../Config.mk

BUILD_UNNEEDED_PARTS	= 0

SUBDIRS    	 = 
LIBSRCS    	 =	ipmi.c \
			ipmitool.c \
			ipmi_return.c \
			ipmi_params.c \
			ipmi_test.c \
			plugins/ipmi_intf.c \
			lib/ipmi_oem.c \
			lib/ipmi_oem_pp.c \
			lib/ipmi_bmc.c \
			lib/ipmi_channel.c \
			lib/ipmi_chassis.c \
			lib/ipmi_raw.c \
			lib/ipmi_lanp.c \
			lib/ipmi_sdr.c \
			lib/ipmi_sel.c \
			lib/ipmi_sensor.c \
			lib/ipmi_strings.c \
			lib/dimm_spd.c \
			lib/helper.c \
			lib/ipmi_print.c \
			lib/ipmi_error.c \
			lib/ipmi_pef.c \
			lib/ipmi_lan.c \
			lib/ipmi_user.c \
			lib/ipmi_sol.c \
			lib/ipmi_fru.c \
			lib/ipmi_raritanoem.c \
			lib/ipmi_selftest.c \


ifeq ($(PP_PRODUCT), pdu)
LIBSRCS		+=      lib/ipmi_oem_pp_rpc.c
endif

ifeq ($(BUILD_UNNEEDED_PARTS),1)
CFLAGS += -DBUILD_UNNEEDED_PARTS

LIBSRCS    	+=	lib/ipmi_event.c \
			lib/ipmi_kvm.c \
			lib/ipmi_session.c \

endif

ifeq ($(PP_FEAT_IPMI_SERVER),1)
LIBSRCS		+=	plugins/loopi/loopi.c
ifeq ($(PP_FEAT_BMC_OEMCMDS_ONLY),1)
LIBSRCS		+=	plugins/lan/lan.c \
			plugins/lan/auth.c \
			plugins/lanplus/lanplus.c \
			plugins/lanplus/lanplus_crypt.c \
			plugins/lanplus/lanplus_crypt_impl.c \
			plugins/lanplus/lanplus_dump.c \
			plugins/lanplus/lanplus_strings.c
ifeq ($(PP_FW_TYPE),erla)
LIBSRCS		+=	plugins/i2c/i2c.c \
			plugins/serial/serial.c
endif
endif
else
LIBSRCS		+=	plugins/lan/lan.c \
			plugins/lan/auth.c \
			plugins/lanplus/lanplus.c \
			plugins/lanplus/lanplus_crypt.c \
			plugins/lanplus/lanplus_crypt_impl.c \
			plugins/lanplus/lanplus_dump.c \
			plugins/lanplus/lanplus_strings.c
ifeq ($(PP_FW_TYPE),erla)
LIBSRCS		+=	plugins/i2c/i2c.c \
			plugins/serial/serial.c
endif
ifeq ($(PP_FW_TYPE),kiratool)
LIBSRCS		+=	plugins/open/open.c \
			plugins/ppscsi/ppscsi.c \
			plugins/ppscsi/scsi_linux.c
endif
endif

ifeq ($(PP_PRODUCT), amddc)
LIBSRCS         +=      lib/ipmi_oem_opma.c
endif

ifeq ($(PP_FEAT_ESB2_TPT), 1)
LIBSRCS		+=	lib/ipmi_oem_intel.c
endif

ifeq ($(PP_OEM), rackable)
LIBSRCS		+=	lib/ipmi_oem_rackable.c
endif

CFLAGS += -DHAVE_CONFIG_H

LIB_NAME	 = libpp_ipmi
SHARED_LIB_MAJOR = 1
SHARED_LIB_MINOR = 0
SHARED_LIB = $(LIB_NAME).so.$(SHARED_LIB_MAJOR).$(SHARED_LIB_MINOR)

# Added -Wno-float-equal since we use float comparisations that seem to be ok
FW_CFLAGS += -Wno-float-equal

include $(PP_BUILD_SYS_DIR)/Top.mk
