include ../../../Config.mk

#CFLAGS	+= -DPP_BMC_DEBUG_LEVEL=8

SUBDIRS     = 
LIBSRCS     = \
	      sensor_config.c \
	      sensor_scanner.c \
	      lex.pp_tp_yy.c \
	      topo_parser.tab.c \
	      topo_base_obj.c \
	      topo_parser_impl.c \
              topo_ctors.c \
	      tp_sensdev.c \
	      tp_scan_sensdev.c \
	      tp_muxed_scanner.c \
	      tp_ipmi_sens.c \
	      tp_i2c_comdev.c \
	      tp_i2c_mux.c \
              tp_i2c_chip.c \
              tp_i2c_alive_cond.c \
              tp_rs485_comdev.c \
              tp_rs485_chip.c \
	      tp_gpio_dev.c \
	      tp_gpio_sens.c \
	      tp_gpio_multi_sens.c \
              tp_gpio_bulk_sens.c \
	      tp_gpio_act.c \
	      tp_gpio_multi_act.c \
	      tp_gpio_loop.c \
	      tp_sdr.c \
	      tp_cond.c \
	      tp_delayed_cond.c \
	      tp_static_cond.c \
	      tp_and_cond.c \
	      tp_sens_has_value_cond.c \
	      tp_acpi_power_state.c \
	      tp_acpi_power_state_opma.c \
	      tp_acpi_power_state_gpio.c \
	      tp_event_collect_ctrl.c \
	      tp_event_collect_pwm_ctrl.c \
              drivers/dummy_sensors.c \
	      drivers/pp_powersupply_sens.c \
	      drivers/pp_i2c_dev.c \
	      drivers/pp_fpga_gpio_dev.c \
	      drivers/pp_fpga_pwm_dev.c \
	      drivers/pp_tach_sens.c \
	      drivers/pp_gpio_disc_sens.c \
	      drivers/pca955x_gpio_dev.c \
	      drivers/pca9555_gpio_dev.c \
	      drivers/pca9556_gpio_dev.c \
	      drivers/max7312_gpio_dev.c \
	      drivers/pca9542_i2c_mux.c \
	      drivers/pca9544_i2c_mux.c \
	      drivers/pca9548_i2c_mux.c \
	      drivers/ltc4305_i2c_mux.c \
	      drivers/ltc4306_i2c_mux.c \
              drivers/adm1031_sensor.c \
              drivers/adm1029.c \
              drivers/adm1024.c \
	      drivers/adm1026.c \
              drivers/ads7830_sensor.c \
	      drivers/w83791d.c \
              drivers/w83791d_sensor.c \
              drivers/w83791d_gpio.c \
              drivers/w83791d_pwm.c \
	      drivers/lm75_sensor.c \
	      drivers/max6695_sensor.c \
	      drivers/max6649_sensor.c \
	      drivers/max1037_adc_sensor.c \
	      drivers/max6681_sensor.c \
              drivers/msi_smx.c \
	      drivers/opma_smx.c \
              drivers/smi_smx.c \
              drivers/warthog_fan_ctrl.c \
              drivers/cheyenne_fan_ctrl.c \
	      drivers/msi_fan_ctrl.c \
	      drivers/adt7463_chip.c \
              drivers/adt7463_sensor.c \
              drivers/adt7463_pwm.c \
	      drivers/linear_fan_ctrl.c \
	      drivers/adc_kira_sensor.c \
	      drivers/w83792d.c \
	      drivers/w83792d_sensor.c \
	      drivers/w83792d_clr_intrusion.c \
	      drivers/lm94.c \
	      drivers/lm94_sensor.c \
	      drivers/w83793g.c \
	      drivers/w83793g_sensor.c \
              drivers/w83793g_clr_intrusion.c \
	      drivers/tmp101.c \
	      drivers/dummy_smx.c 
	      

ifeq ($(PP_PRODUCT),msidc)
LIBSRCS    += drivers/msi_smx.c
endif

ifeq ($(PP_PRODUCT),amddc)
LIBSRCS    += drivers/opma_smx.c
endif

ifeq ($(PP_PRODUCT),pdu)
LIBSRCS    += \
              drivers/rc_rs485_dev.c \
              drivers/rc_cy8c26.c \
              drivers/rpc_cbk_sensor.c \
              drivers/rpc_pwr_sens.c \
              drivers/rpc_beep_ctrl.c \
              drivers/rpc_disp_ctrl.c \
              drivers/rpc_olled_ctrl.c 
endif


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

include $(PP_BUILD_SYS_DIR)/Top.mk

doc::
	$(PP_DOC_SYS_DIR)/c2d.sh -f html $(docBookOutputDir) include/pp/bmc drivers

clean-local::
	rm -f topo_parser.tab.c topo_parser.tab.h lex.pp_tp_yy.c

topo_parser.tab.c topo_parser.tab.h: topo_parser.y
	bison -p pp_tp_yy -d $<

lex.pp_tp_yy.c: topo_parser.tab.h topo_parser.l
	flex -Ppp_tp_yy topo_parser.l

topo_parser.tab.os lex.pp_tp_yy.os: topo_parser.tab.h topo_parser_impl.h
