1 Star 0 Fork 0

Ryan/iupmingw

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Makefile 5.05 KB
一键复制 编辑 原始数据 按行查看 历史
guobin8205 提交于 2017-12-27 00:19 . update make
ODIR = o
IUPSRC = ..
#LUALIB = -L/usr/local/lib -llua
ifeq ($(shell uname), Linux)
LUAINC = -I/usr/local/mingw64/lua53/include
LUALIB = -L/usr/local/mingw64/lua53 -llua53
LUABIN = /usr/bin/lua
else
LUAINC = -I/usr/local/include
LUALIB = -L/usr/local/bin -llua53
LUABIN = /usr/local/bin/lua.exe
endif
AR= ar rcu
ifeq ($(shell uname), Linux)
CC= x86_64-w64-mingw32-gcc
else
CC= gcc
endif
INCLUDES = include src
INCLUDES += src/win
# Windows XP minimum
WIN32VER = 0x0501
DEFINES = _WIN32_WINNT=$(WIN32VER) _WIN32_IE=0x600 WINVER=$(WIN32VER) UNICODE IUP_DLL
all : iup.exe | iupscintilla.dll iupluaimglib.dll
SRCIUP = iup_array.c iup_callback.c iup_dlglist.c iup_attrib.c iup_focus.c iup_font.c \
iup_globalattrib.c iup_object.c iup_key.c iup_layout.c iup_ledlex.c iup_names.c \
iup_ledparse.c iup_predialogs.c iup_register.c iup_scanf.c iup_show.c iup_str.c \
iup_func.c iup_childtree.c iup.c iup_classattrib.c iup_dialog.c iup_assert.c \
iup_messagedlg.c iup_timer.c iup_image.c iup_label.c iup_fill.c iup_zbox.c \
iup_colordlg.c iup_fontdlg.c iup_filedlg.c iup_strmessage.c iup_menu.c iup_frame.c \
iup_user.c iup_button.c iup_radio.c iup_toggle.c iup_progressbar.c iup_text.c iup_val.c \
iup_box.c iup_hbox.c iup_vbox.c iup_cbox.c iup_class.c iup_classbase.c iup_maskmatch.c \
iup_mask.c iup_maskparse.c iup_tabs.c iup_spin.c iup_list.c iup_getparam.c iup_link.c \
iup_sbox.c iup_scrollbox.c iup_normalizer.c iup_tree.c iup_split.c iup_layoutdlg.c \
iup_recplay.c iup_progressdlg.c iup_expander.c iup_open.c iup_table.c iup_canvas.c \
iup_gridbox.c iup_detachbox.c iup_backgroundbox.c iup_linefile.c iup_config.c \
iup_flatbutton.c iup_animatedlabel.c iup_draw.c iup_flatframe.c iup_flattabs.c \
iup_flatscrollbar.c iup_flatscrollbox.c
SRCWIN += iupwin_common.c iupwin_brush.c iupwin_focus.c iupwin_font.c \
iupwin_globalattrib.c iupwin_handle.c iupwin_key.c iupwin_str.c \
iupwin_loop.c iupwin_open.c iupwin_tips.c iupwin_info.c \
iupwin_dialog.c iupwin_messagedlg.c iupwin_timer.c \
iupwin_image.c iupwin_label.c iupwin_canvas.c iupwin_frame.c \
iupwin_colordlg.c iupwin_fontdlg.c iupwin_filedlg.c iupwin_dragdrop.c \
iupwin_button.c iupwin_draw.c iupwin_toggle.c iupwin_clipboard.c \
iupwin_progressbar.c iupwin_text.c iupwin_val.c iupwin_touch.c \
iupwin_tabs.c iupwin_menu.c iupwin_list.c iupwin_tree.c \
iupwin_calendar.c iupwin_datepick.c
SRCWIN += iupwindows_main.c iupwindows_help.c iupwindows_info.c
OBJIUP := $(patsubst %.c,$(ODIR)/%.o,$(SRCIUP))
OBJWIN := $(patsubst %.c,$(ODIR)/%.o,$(SRCWIN))
CFLAGS = -O2 -Wall
#CFLAGS = -g
COMPILE = $(CC) -c -o $@ $< $(CFLAGS) $(addprefix -I$(IUPSRC)/,$(INCLUDES)) $(addprefix -D,$(DEFINES))
# IUP lua warpper
CTRLUA = button.lua canvas.lua dialog.lua colordlg.lua clipboard.lua \
filedlg.lua fill.lua frame.lua hbox.lua normalizer.lua gridbox.lua \
item.lua image.lua imagergb.lua imagergba.lua label.lua expander.lua \
link.lua menu.lua multiline.lua list.lua separator.lua user.lua \
submenu.lua text.lua toggle.lua vbox.lua zbox.lua timer.lua \
sbox.lua scrollbox.lua split.lua spin.lua spinbox.lua cbox.lua \
radio.lua val.lua tabs.lua fontdlg.lua tree.lua progressbar.lua \
messagedlg.lua progressdlg.lua backgroundbox.lua flatbutton.lua \
animatedlabel.lua calendar.lua datepick.lua param.lua parambox.lua \
detachbox.lua flatframe.lua flattabs.lua flatscrollbox.lua
SRCLUA = iuplua.lua constants.lua iup_config.lua
GC := $(patsubst %.lua,$(ODIR)/il_%.c,$(CTRLUA))
$(GC) : $(ODIR)/il_%.c : $(IUPSRC)/srclua5/elem/%.lua iupgen.lua
$(LUABIN) iupgen.lua $< $@
LH := $(patsubst %.lua,$(ODIR)/%.lh,$(SRCLUA))
$(LH) : $(ODIR)/%.lh : $(IUPSRC)/srclua5/%.lua $(IUPSRC)/srclua5/bin2c.lua
$(LUABIN) $(IUPSRC)/srclua5/bin2c.lua $< > $@
IUPLUASRC = iuplua.c iuplua_api.c iuplua_draw.c iuplua_tree_aux.c iuplua_scanf.c \
iuplua_getparam.c iuplua_getcolor.c iuplua_config.c
OBJIUPLUA := $(patsubst %.c,$(ODIR)/%.o,$(IUPLUASRC))
OBJCTRL := $(patsubst %.lua,$(ODIR)/il_%.o,$(CTRLUA))
$(OBJIUPLUA) : $(ODIR)/%.o : $(IUPSRC)/srclua5/%.c $(LH) | $(ODIR)
$(CC) $(CFLAGS) -c -o $@ $< -DIUPLUA_USELH -I$(IUPSRC)/include -I$(IUPSRC)/src -I$(ODIR) -I$(IUPSRC)/srclua5 $(LUAINC)
$(OBJCTRL) : %.o : %.c | $(ODIR)
$(CC) $(CFLAGS) -c -o $@ $< -I$(IUPSRC)/include -I$(IUPSRC)/srclua5 $(LUAINC)
# all
$(ODIR) :
mkdir $@
$(OBJIUP): $(ODIR)/%.o: $(IUPSRC)/src/%.c | $(ODIR)
$(COMPILE)
$(OBJWIN): $(ODIR)/%.o: $(IUPSRC)/src/win/%.c | $(ODIR)
$(COMPILE)
$(ODIR)/libiup.a : $(OBJIUP) $(OBJWIN) $(OBJIUPLUA) $(OBJCTRL)
$(AR) $@ $^
iupscintilla.dll :
$(MAKE) -f Makefile.scintilla
iupluaimglib.dll :
$(MAKE) -f Makefile.imglib
luaiup.dll : $(OBJIUP) $(OBJWIN) $(OBJIUPLUA) $(OBJCTRL)
$(CC) --shared -o $@ $^ -lgdi32 -lcomdlg32 -lcomctl32 -lole32 -luuid $(LUALIB)
# -liup -lgdi32 -lcomdlg32 -lcomctl32 -luuid -loleaut32 -lole32
iup.exe : iupmain.c | luaiup.dll
$(CC) $(CFLAGS) -o $@ $^ -I$(IUPSRC)/include $(LUAINC) $(LUALIB) -L. -lluaiup -mwindows
clean :
rm -rf $(ODIR) && rm -f *.exe && rm -f *.dll
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Lua
1
https://gitee.com/guobin2019/iupmingw.git
[email protected]:guobin2019/iupmingw.git
guobin2019
iupmingw
iupmingw
master

搜索帮助