xref: /openbmc/skeleton/Makefile (revision 597d49e6)
188872670SNorman James#CC=gcc
2e276510cSNorman JamesOBJS    = objects/pflash/progress.o objects/pflash/ast-sf-ctrl.o
3e276510cSNorman JamesOBJS	+= objects/pflash/libflash/libflash.o objects/pflash/libflash/libffs.o
4e276510cSNorman JamesOBJS	+= objects/pflash/arm_io.o
5f066e878SNorman JamesOBJS2   = progress.o ast-sf-ctrl.o libflash.o libffs.o arm_io.o
6f066e878SNorman JamesOBJS3   = obj/progress.o obj/ast-sf-ctrl.o obj/libflash.o obj/libffs.o obj/arm_io.o
7831188feSBrad BishopINCLUDES=$(shell pkg-config --cflags gio-unix-2.0 glib-2.0) -Iincludes -Iobjects/pflash -I.
8*597d49e6SAdriana KobylakLIBS=$(shell pkg-config --libs gio-unix-2.0 glib-2.0) -Llib -lopenbmc_intf
9e276510cSNorman James
10e276510cSNorman James%.o: interfaces/%.c
11831188feSBrad Bishop	$(CC) -c -fPIC -o obj/$@ $< $(CFLAGS) $(INCLUDES)
12e276510cSNorman James
13e276510cSNorman James%.o: objects/%.c
14831188feSBrad Bishop	$(CC) -c -o obj/$@ $< $(LIBS) $(CFLAGS) $(INCLUDES)
15ddb97385SNorman James
16ddb97385SNorman James%.o: includes/%.c
17831188feSBrad Bishop	$(CC) -c -o obj/$@ $< $(LIBS) $(CFLAGS) $(INCLUDES)
18e276510cSNorman James
19e276510cSNorman James%.o: objects/pflash/%.c
20831188feSBrad Bishop	$(CC) -c -o obj/$@ $< $(CFLAGS) $(INCLUDES)
21e276510cSNorman James
22f066e878SNorman James%.o: objects/pflash/libflash/%.c
23831188feSBrad Bishop	$(CC) -c -o obj/$@ $< $(CFLAGS) $(INCLUDES)
241e25d1d0SNorman James
25*597d49e6SAdriana Kobylakall: setup libopenbmc_intf power_control led_controller button_power control_host fan host_watchdog control_bmc board_vpd pcie_slot_present flash_bios flasher control_bmc_barreleye
26*597d49e6SAdriana Kobylak
27f066e878SNorman Jamessetup:
28*597d49e6SAdriana Kobylak	mkdir -p obj lib
291e25d1d0SNorman James
305e792e34SNorman Jamesclean:
31*597d49e6SAdriana Kobylak	rm -rf obj lib bin/*.exe
325e792e34SNorman James
33362a80f3SNorman Jameslibopenbmc_intf: openbmc_intf.o
34*597d49e6SAdriana Kobylak	$(CC) -shared -o lib/$@.so obj/openbmc_intf.o $(LDFLAGS)
35e276510cSNorman James
36831188feSBrad Bishoppower_control: power_control_obj.o gpio.o libopenbmc_intf
37831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/gpio.o obj/power_control_obj.o $(LDFLAGS) $(LIBS)
38e276510cSNorman James
39831188feSBrad Bishopled_controller: led_controller.o gpio.o libopenbmc_intf
40831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/gpio.o obj/led_controller.o $(LDFLAGS) $(LIBS)
41e276510cSNorman James
42831188feSBrad Bishopbutton_power: button_power_obj.o gpio.o libopenbmc_intf
43831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/button_power_obj.o obj/gpio.o $(LDFLAGS) $(LIBS)
44e276510cSNorman James
45831188feSBrad Bishopcontrol_host: control_host_obj.o gpio.o libopenbmc_intf
46831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/gpio.o obj/control_host_obj.o $(LDFLAGS) $(LIBS)
47e276510cSNorman James
48831188feSBrad Bishopflash_bios:  flash_bios_obj.o libopenbmc_intf
49831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/flash_bios_obj.o $(LDFLAGS) $(LIBS)
50e276510cSNorman James
51831188feSBrad Bishopfan: fan_generic_obj.o gpio.o libopenbmc_intf
52831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/gpio.o obj/fan_generic_obj.o $(LDFLAGS) $(LIBS)
53471ab59eSNorman James
54831188feSBrad Bishophost_watchdog: host_watchdog_obj.o libopenbmc_intf
55831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/host_watchdog_obj.o $(LDFLAGS) $(LIBS)
56471ab59eSNorman James
57831188feSBrad Bishopcontrol_bmc: control_bmc_obj.o libopenbmc_intf
58831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/control_bmc_obj.o $(LDFLAGS) $(LIBS)
59471ab59eSNorman James
6042c1be8fSNorman Jamescontrol_bmc_barreleye: control_bmc_barreleye.o libopenbmc_intf
6142c1be8fSNorman James	$(CC) -o bin/$@.exe obj/control_bmc_barreleye.o $(LDFLAGS) $(LIBS)
62471ab59eSNorman James
63831188feSBrad Bishopboard_vpd: board_vpd_obj.o libopenbmc_intf
64831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/board_vpd_obj.o $(LDFLAGS) $(LIBS)
651e25d1d0SNorman James
66831188feSBrad Bishoppcie_slot_present: pcie_slot_present_obj.o gpio.o libopenbmc_intf
67831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/pcie_slot_present_obj.o obj/gpio.o $(LDFLAGS) $(LIBS)
6819e45917SNorman James
69831188feSBrad Bishopflasher:  $(OBJS2) flasher_obj.o libopenbmc_intf
70831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/flasher_obj.o $(OBJS3) $(LDFLAGS) $(LIBS)
711e25d1d0SNorman James
72831188feSBrad Bishophwmon:  hwmon_intf.o libopenbmc_intf
73831188feSBrad Bishop	$(CC) -o bin/$@.exe obj/hwmon_intf.o $(LDFLAGS) $(LIBS)
7418998184SNorman James
75a3e47c4aSNorman James
76