📄 makefile
字号:
# This file is part of the OpenLB library## Copyright (C) 2007 Mathias Krause# Address: Wilhelm-Maybach-Str. 24, 68766 Hockenheim, Germany # E-mail: mathias.j.krause@gmx.de## This program is free software; you can redistribute it and/or# modify it under the terms of the GNU General Public License# as published by the Free Software Foundation; either version 2# of the License, or (at your option) any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public # License along with this program; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor,# Boston, MA 02110-1301, USA.######################################################################################################################################################## DEFINITIONS TO BE CHANGEDROOT := ../..SRC :=OUTPUT := rayleigh_benard2D############################################################################# definitionsinclude $(ROOT)/Makefile.incOBJECTS := $(foreach file, $(SRC) $(OUTPUT), $(file).o)DEPS := $(foreach file, $(SRC) $(OUTPUT), $(file).d)############################################################################# allall : depend compile updatelib link############################################################################# dependenciesdepend : $(DEPS)%.d : %.cpp @echo Create dependencies for $< @$(SHELL) -ec '$(CXX) -M $(CXXFLAGS) $(IDIR) $< \ | sed -e "s!$*\.o!$(PWD)\/$*\.o!1" > .tmpfile; \ cp -f .tmpfile $@;'############################################################################# compilecompile : $(OBJECTS)%.o: %.cpp @echo Compile $< $(CXX) $(CXXFLAGS) $(IDIR) -c $< -o $@############################################################################# cleanclean : cleanrub cleanobj cleandepcleanrub: @echo Clean rubbish files @rm -f *~ core .tmpfile $(OUTPUT)cleanobj: @echo Clean object files @rm -f $(OBJECTS)cleandep: @echo Clean dependencies files @rm -f $(DEPS)cleanbuild: @echo Clean olb main @cd $(ROOT); \ $(MAKE) cleanbuild;cleanall : clean cleanbuild############################################################################# update libupdatelib : @cd $(ROOT); \ $(MAKE) all;############################################################################# linklink: $(OUTPUT)$(OUTPUT): $(OBJECTS) $(ROOT)/$(LIBDIR)/lib$(LIB).a @echo Link $@ $(CXX) $(foreach file, $(SRC), $(file).o) $@.o $(LDFLAGS) -L$(ROOT)/$(LIBDIR) -l$(LIB) -o $@############################################################################# include dependenciesifneq "$(strip $(wildcard *.d))" "" include $(foreach file,$(DEPS),$(file))endif######################################################################################################################################################
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -