Tuist 탬플릿 만들기 (1) Make File

2024. 11. 9. 17:00·iOS/Tuist
반응형

make란?

make는 소프트웨어 개발을 위해 유닉스 계열 운영체제에서 사용되는 프로그램 빌드 도구로써

파일 간의 종속 관계를 파악하여 makefile에 적힌 순서대로 쉘이 순차적으로 실행한다

 

반복적인 명령을 자동화할 때 사용한다.

MakeFile란?

make문법에 맞춰 목적파일, 의존성, 명령어, 매크로 등을 활용하여 컴파일을 쉽게하기 위핸 make 설정 파일이다.

구조는 다음과 같다.

  • 목적파일(Target): 명령어가 수행되어 나온 결과를 저장할 파일
  • 의존성(Dependency): 목적 파일을 만들기위해 필요한 재료
  • 명령어(Command): 실행되어햘 명령어들
  • 매크로(macro): 코드를 단순화 시키키 위한 축약 메서드

 

Tuist 템플릿에 갑자기 make ?? 

내 생각으로는 Tuist를 통해 프로젝트를 만들 때 다양한 자동화 커맨드를 등록하면 굉장한 생상선 향상을 경험할 수 있다.

.

혼자 작업을 한다면 alias 기능일 이용해서 맥 자체에 등록을 했겠지만

프로젝트는 혼자하는 것이 아니기 때문에 통일된 자동화 커맨드를 관리할 필요가 있다.

 

맥과 애플은 기본적으로 C언어 관련된 내용은 깔려있때문에 gcc 역시 기본적으로 제공된다.

 

그렇기 때문에 자연스럽게 make로 관리하면 별도의 설정없이 공통된 makefile만 공유하면 공통된 커맨드를 공유할 수 있다.

 

간단한 문법

command명: 의존성1 의존성2
	command에 의해 실행될 명령1
    command에 의해 실행된 명령2

 

사실은 조금 더 복잡한 과정이 있지만 우리는 매크로 제작에 필요한 부분만 짚고 넘어가자.

자세한 문법은 참고 링크를 살펴보자.

 

간단한 예

clean:
	rm -rf /temp

 

이렇게 MakeFile을 만들고 make clean을 하게된다면 temp디렉토리는 사라지게된다.

 

참고

 

 

 

Makefile 기본 문법

GNU Make 매뉴얼 : https://www.gnu.org/software/make/manual/html_node/ 한국어 번역 : http://korea.gnu.org/manual/release/make/make-sjp/make-ko_toc.html Make란 파일 관리 유틸리티. 파일간의 종속관계를 파악하여 Makefile에 적힌

parkgaebung.tistory.com

 

반응형

'iOS > Tuist' 카테고리의 다른 글

[부스트 캠프] Tuist와 불편한 동거  (4) 2024.11.26
Tuist 구성 파일  (0) 2024.11.03
Framework vs Library  (3) 2024.11.03
프로젝트 생성 관련 사전 지식  (3) 2024.11.02
Tuist란?  (1) 2024.11.02
'iOS/Tuist' 카테고리의 다른 글
  • [부스트 캠프] Tuist와 불편한 동거
  • Tuist 구성 파일
  • Framework vs Library
  • 프로젝트 생성 관련 사전 지식
Hamp
Hamp
남들에게 보여주기 부끄러운 잡다한 글을 적어 나가는 자칭 기술 블로그입니다.
  • Hamp
    Hamp의 분리수거함
    Hamp
  • 전체
    오늘
    어제
    • 분류 전체보기 (329) N
      • CS (30)
        • 객체지향 (2)
        • Network (7)
        • OS (6)
        • 자료구조 (1)
        • LiveStreaming (3)
        • 이미지 (1)
        • 잡다한 질문 정리 (0)
        • Hardware (2)
        • 이론 (6)
        • 컴퓨터 그래픽스 (0)
      • Firebase (3)
      • Programing Langauge (41)
        • swift (34)
        • python (6)
        • Kotlin (1)
      • iOS (134)
        • UIKit (37)
        • Combine (1)
        • SwiftUI (34)
        • Framework (7)
        • Swift Concurrency (22)
        • Tuist (6)
        • Setting (11)
        • Modularization (1)
        • Instruments (6)
      • PS (59)
        • 프로그래머스 (24)
        • 백준 (13)
        • LeetCode (19)
        • 알고리즘 (3)
      • Git (18)
        • 명령어 (4)
        • 이론 (2)
        • hooks (1)
        • config (2)
        • action (7)
      • Shell Script (2)
      • Linux (6)
        • 명령어 (5)
      • Spring (21)
        • 어노테이션 (6)
        • 튜토리얼 (14)
      • CI-CD (4)
      • Android (0)
        • Jetpack Compose (0)
      • AI (11) N
        • 이론 (10) N
        • MCP (1)
        • LangGraph (0)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    UIKit
    lifecycle
    protocol
    투포인터
    프로그래머스
    백준
    IOS
    GIT
    CS
    boostcamp
    Swift
    dp
    dfs
    property
    concurrency
    dispatch
    AVFoundation
    Spring
    Tuist
    SwiftUI
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.0
Hamp
Tuist 탬플릿 만들기 (1) Make File
상단으로

티스토리툴바