대소문자를 구분하지 않는 파일 시스템에서 Linux 커널을 빌드할 수 있습니까?

대소문자를 구분하지 않는 파일 시스템에서 Linux 커널을 빌드할 수 있습니까?

Linux 커널 소스 코드에는 대소문자를 구분하지 않는 파일 시스템에 배치할 때 충돌이 발생하는 일부 겹치는 파일 이름이 있습니다. 6.4.7 기준 목록은 다음과 같습니다.

  • 존재하다 include/uapi/linux/netfilter/:
    • xt_CONNMARK.h그리고xt_connmark.h
    • xt_DSCP.h그리고xt_dscp.h
    • xt_MARK.h그리고xt_mark.h
    • xt_RATEEST.h그리고xt_rateest.h
    • xt_TCPMSS.h그리고xt_tcpmss.h
  • 존재하다 include/uapi/linux/netfilter_ipv4/:
    • ipt_ECN.h그리고ipt_ecn.h
    • ipt_TTL.h그리고ipt_ttl.h
  • 존재하다 include/uapi/linux/netfilter_ipv6/:
    • ip6t_HL.h그리고ip6t_hl.h
  • 존재하다 net/netfilter/:
    • xt_DSCP.c그리고xt_dscp.c
    • xt_HL.c그리고xt_hl.c
    • xt_RATEEST.c그리고xt_rateest.c
    • xt_TCPMSS.c그리고xt_tcpmss.c
  • 존재하다 tools/memory-model/litmus-tests/:
    • Z6.0+pooncelock+poonceLock+pombonce.litmus그리고Z6.0+pooncelock+pooncelock+pombonce.litmus

대소문자를 구분하지 않는 파일 시스템에 소스 트리를 채운 후 각 쌍의 한 파일이 다른 파일을 덮어씁니다. 분명히 netfilter가 활성화된 상태에서 Linux 커널을 빌드하는 것은 불가능합니다. 파일의 두 버전이 서로 다른 이름으로 저장되고 이러한 이름 변경을 확인하기 위해 소스 코드가 수정되더라도 API는 손상될 것입니다. 누가 그것을 원합니까?

netfilter 지원 없이 Linux 커널을 구축할 수 있습니까? 그 과정에서 또 어떤 어려움이 발생할 수 있나요?

관련 정보