12d08521bSGarrett D'Amore# 22d08521bSGarrett D'Amore# This file and its contents are supplied under the terms of the 32d08521bSGarrett D'Amore# Common Development and Distribution License ("CDDL"), version 1.0. 42d08521bSGarrett D'Amore# You may only use this file in accordance with the terms of version 52d08521bSGarrett D'Amore# 1.0 of the CDDL. 62d08521bSGarrett D'Amore# 72d08521bSGarrett D'Amore# A full copy of the text of the CDDL should have accompanied this 82d08521bSGarrett D'Amore# source. A copy of the CDDL is also available via the Internet at 92d08521bSGarrett D'Amore# http://www.illumos.org/license/CDDL. 102d08521bSGarrett D'Amore# 112d08521bSGarrett D'Amore 122d08521bSGarrett D'Amore# 132d08521bSGarrett D'Amore# Copyright (c) 2012 by Delphix. All rights reserved. 14de572d98SGarrett D'Amore# Copyright 2015 Garrett D'Amore <garrett@damore.org> 1544bf619dSJohn Levon# Copyright 2019 Joyent, Inc. 16621b6cf7SAndy Fiddaman# Copyright 2022 OmniOS Community Edition (OmniOSce) Association. 17a87ab1eaSBill Sommerfeld# Copyright 2023 Bill Sommerfeld <sommerfeld@alum.mit.edu> 18*faadcf7eSRobert Mustacchi# Copyright 2024 Oxide Computer Company 192d08521bSGarrett D'Amore# 202d08521bSGarrett D'Amore 21b599bd93SRobert MustacchiSUBDIRS = \ 22b599bd93SRobert Mustacchi catopen \ 23621b6cf7SAndy Fiddaman err \ 242b395c3cSAndy Fiddaman fexecve \ 25b599bd93SRobert Mustacchi fpround \ 260a9a25a2SRichard Hansen i18n \ 27b599bd93SRobert Mustacchi newlocale \ 28b599bd93SRobert Mustacchi nl_langinfo \ 29b599bd93SRobert Mustacchi priv_gettext \ 3044431c82SRobert Mustacchi qsort \ 31b599bd93SRobert Mustacchi random \ 32490fea6bSYuri Pankov regex \ 332209d3c8SRichard Lowe select \ 34cd62a92dSRobert Mustacchi stdio \ 35b599bd93SRobert Mustacchi symbols \ 36e56998eeSRobert Mustacchi threads \ 37b599bd93SRobert Mustacchi wcsrtombs \ 38b599bd93SRobert Mustacchi wctype 392d08521bSGarrett D'Amore 40fc2512cfSRobert MustacchiPROGS = \ 41fc2512cfSRobert Mustacchi aligned_alloc \ 424322dd90SRobert Mustacchi asprintf-14933 \ 43fc2512cfSRobert Mustacchi c11_threads \ 44fc2512cfSRobert Mustacchi c11_tss \ 45fc2512cfSRobert Mustacchi call_once \ 46a87ab1eaSBill Sommerfeld closefrom \ 477dc9a163SRobert Mustacchi endian \ 4860b81b86SRobert Mustacchi env-7076 \ 49f52b16c6SYuri Pankov fnmatch \ 50cfa8d083SRobert Mustacchi isatty \ 51d6bf1708SRobert Mustacchi memchr \ 5200efb5e1SYuri Pankov memset_s \ 5350718d3eSRobert Mustacchi mutex-16200 \ 54a547acf9SRichard Lowe posix_memalign \ 5506ca4e39SAndy Fiddaman printf-15294 \ 56804635d7SYuri Pankov printf-9511 \ 5749add8ecSRobert Mustacchi psignal-5097 \ 58fc2512cfSRobert Mustacchi quick_exit_order \ 59fc2512cfSRobert Mustacchi quick_exit_status \ 6000efb5e1SYuri Pankov set_constraint_handler_s \ 61efcfb316SYuri Pankov strcoll-strxfrm-6907 \ 62*faadcf7eSRobert Mustacchi strerror \ 63223750d9SAndy Fiddaman strtonum \ 64f2d34afaSRobert Mustacchi timespec_get \ 65f2d34afaSRobert Mustacchi wcsncasecmp \ 66f2d34afaSRobert Mustacchi wcsncasecmp-7344 \ 67eda3ef2dSRobert Mustacchi wcsncasecmp-7350 \ 68b7a77849SAndy Fiddaman uchar \ 69b7a77849SAndy Fiddaman utimes 70fc2512cfSRobert Mustacchi 71fc2512cfSRobert MustacchiSCRIPTS = \ 7249add8ecSRobert Mustacchi quick_exit \ 7349add8ecSRobert Mustacchi psignal 74fc2512cfSRobert Mustacchi 75fc2512cfSRobert MustacchiCPPFLAGS += -D_REENTRANT 76fc2512cfSRobert Mustacchi 77fc2512cfSRobert MustacchiPROGS32 = $(PROGS:%=%.32) 78afc62b4bSRobert MustacchiPROGS64 = \ 79afc62b4bSRobert Mustacchi $(PROGS:%=%.64) \ 80afc62b4bSRobert Mustacchi printf-6961.64 81fc2512cfSRobert Mustacchi 82fc2512cfSRobert Mustacchialigned_alloc.32 := LDLIBS += -lproc 83fc2512cfSRobert Mustacchialigned_alloc.64 := LDLIBS64 += -lproc 84a547acf9SRichard Loweposix_memalign.32 := LDLIBS += -lproc 85a547acf9SRichard Loweposix_memalign.64 := LDLIBS64 += -lproc 86fc2512cfSRobert Mustacchi 874322dd90SRobert Mustacchiasprintf-14933.32 := CSTD=$(GNU_C99) 884322dd90SRobert Mustacchiasprintf-14933.64 := CSTD=$(GNU_C99) 894322dd90SRobert Mustacchi 9000efb5e1SYuri Pankovmemset_s.32 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 9100efb5e1SYuri Pankovmemset_s.64 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 9200efb5e1SYuri Pankovset_constraint_handler_s.32 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 9300efb5e1SYuri Pankovset_constraint_handler_s.64 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 9400efb5e1SYuri Pankov 95cfa8d083SRobert Mustacchiisatty.32 := CSTD=$(GNU_C99) 96cfa8d083SRobert Mustacchiisatty.64 := CSTD=$(GNU_C99) 97cfa8d083SRobert Mustacchi 9850718d3eSRobert Mustacchimutex-16200.32 := LDLIBS += -lproc 9950718d3eSRobert Mustacchimutex-16200.64 := LDLIBS64 += -lproc 10050718d3eSRobert Mustacchimutex-16200.32 := CSTD=$(GNU_C99) 10150718d3eSRobert Mustacchimutex-16200.64 := CSTD=$(GNU_C99) 10250718d3eSRobert Mustacchi 103223750d9SAndy Fiddamanstrtonum.32 := CSTD=$(GNU_C99) 104223750d9SAndy Fiddamanstrtonum.64 := CSTD=$(GNU_C99) 105223750d9SAndy Fiddaman 106fc2512cfSRobert MustacchiROOTOPTDIR = $(ROOT)/opt/libc-tests/tests 107fc2512cfSRobert MustacchiROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTDIR)/%) \ 108fc2512cfSRobert Mustacchi $(PROGS64:%=$(ROOTOPTDIR)/%) \ 109fc2512cfSRobert Mustacchi $(SCRIPTS:%=$(ROOTOPTDIR)/%) 110fc2512cfSRobert Mustacchi 111fc2512cfSRobert Mustacchiinclude $(SRC)/cmd/Makefile.cmd 112fc2512cfSRobert Mustacchi 113fc2512cfSRobert Mustacchiall := TARGET = all 114fc2512cfSRobert Mustacchiinstall := TARGET = install 115fc2512cfSRobert Mustacchiclean := TARGET = clean 116fc2512cfSRobert Mustacchiclobber := TARGET = clobber 117fc2512cfSRobert Mustacchilint := TARGET = lint 118fc2512cfSRobert Mustacchi 119fc2512cfSRobert Mustacchi.KEEP_STATE: 120fc2512cfSRobert Mustacchi 121fc2512cfSRobert Mustacchiinstall: $(SUBDIRS) $(ROOTOPTPROGS) 122fc2512cfSRobert Mustacchi 123fc2512cfSRobert Mustacchiall: $(SUBDIRS) $(PROGS32) $(PROGS64) 124fc2512cfSRobert Mustacchi 125fc2512cfSRobert Mustacchiclean lint: $(SUBDIRS) 126fc2512cfSRobert Mustacchi 127fc2512cfSRobert Mustacchi$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTDIR) 128fc2512cfSRobert Mustacchi 129fc2512cfSRobert Mustacchi$(ROOTOPTDIR): 130fc2512cfSRobert Mustacchi $(INS.dir) 131fc2512cfSRobert Mustacchi 132fc2512cfSRobert Mustacchi$(ROOTOPTDIR)/%: % 133fc2512cfSRobert Mustacchi $(INS.file) 134fc2512cfSRobert Mustacchi 135fc2512cfSRobert Mustacchi$(ROOTOPTDIR)/%: %.ksh 136fc2512cfSRobert Mustacchi $(INS.rename) 137fc2512cfSRobert Mustacchi 138fc2512cfSRobert Mustacchi%.64: %.c 1391919e1f7SRichard Lowe $(LINK64.c) -o $@ $< $(LDLIBS64) 140fc2512cfSRobert Mustacchi $(POST_PROCESS) 141fc2512cfSRobert Mustacchi 142fc2512cfSRobert Mustacchi%.32: %.c 1439c05409fSRichard Lowe $(LINK.c) -o $@ $< $(LDLIBS) 144fc2512cfSRobert Mustacchi $(POST_PROCESS) 145fc2512cfSRobert Mustacchi 146fc2512cfSRobert Mustacchiclobber: $(SUBDIRS) 147fc2512cfSRobert Mustacchi $(RM) $(PROGS32) $(PROGS64) 148fc2512cfSRobert Mustacchi 149fc2512cfSRobert Mustacchi$(SUBDIRS): FRC 150fc2512cfSRobert Mustacchi @cd $@; pwd; $(MAKE) $(TARGET) 151fc2512cfSRobert Mustacchi 152fc2512cfSRobert MustacchiFRC: 153