zoukankan      html  css  js  c++  java
  • 写的一个Makefile

    #=========================================================================
    #
    #       MAKE FILE FOR ROCKY
    #
    #
    #=========================================================================
    SHELL   = /usr/bin/sh
    VERSION = 0.1
    DATE    = `date '+%Y-%m-%d'`
    PACKAGE = ROCKY
    
    #---------------PATH INFO--------------------
    LBIN = bin
    LOBJ = obj
    LSRC = src
    LCLIENT = client
    #--------------------------------------------
    
    
    #----------- COMPILING INFOMATION-------------
    CC      = gcc
    EXE     = ROCKY
    CLIENT  = CLIENT_ROCKY
    CDUBG   =
    CFLAGS  = -Wall -g -o
    # CFLAS = -Wall -Wextra -O2 
    LIBS    = -lncurses -pthread
    
    ALLFILES= $(wildcard $(LSRC)/*.c)
    CLIENT_FILES=$(wildcard $(LCLIENT)/*.c)
    DAEMON  = ROCKY_DAEMON
    # OBJS
    OBJS = $(ALLFILES:%.c=%.o)
    CLIENT_OBJS = $(CLIENT_FILES:%.c=%.o)
    
    #----------------------------------------------
    
    
    #PHONY 
    all:    info dirs $(EXE) $(CLIENT)
    
    info:
            -@echo $(EXE) $(VERSION) IS BUILDING...
    
    ${EXE}: $(OBJS)
            $(CC) $(CFLAGS) $@ $(OBJS) $(LIBS)
    
    $(DAEMON):
            $(CC) $(CFLAGS) $@      
    
    dirs:
            -@mkdir -p $(LBIN) $(LOBJ) 
    
    $(CLIENT):$(CLIENT_OBJS)
            $(CC) $(CFLAGS) $@ $(CLIENT_OBJS)
    
    mv2dir:
            -@mv $(EXE) $(LBIN)
            -@mv $(CLIENT) $(LBIN)
    clean:
            -@rm $(PACKAGE)
            -@rm -rf $(LBIN) $(LOBJ)
            -@rm  $(LSRC)/*.o
            -@rm  $(LCIENT)/*.o
            -@rm $(CLIENT)
    
    
    
    #---objs---
    
    $(OBJS):%.o:%.c
            $(CC) -c $< -o $@
    
    $(CLIENT_OBJS):%.o:%.c
            $(CC) -c $< -o $@
    
    .PHONY: clean
  • 相关阅读:
    Guzz入门教程
    设计模式开题
    纪录idea不能创建class类问题(Cannot Create Class)
    dbrouter实现流程图
    记录一次concurrent mode failure问题排查过程以及解决思路
    程序员的自我修养
    CyclicBarrier之共享锁的理解
    sed选项详解(options)
    sed 范围查找
    Sed命令
  • 原文地址:https://www.cnblogs.com/unixshell/p/3498877.html
Copyright © 2011-2022 走看看