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. 16*621b6cf7SAndy Fiddaman# Copyright 2022 OmniOS Community Edition (OmniOSce) Association. 172d08521bSGarrett D'Amore# 182d08521bSGarrett D'Amore 19b599bd93SRobert MustacchiSUBDIRS = \ 20b599bd93SRobert Mustacchi catopen \ 21*621b6cf7SAndy Fiddaman err \ 22b599bd93SRobert Mustacchi fpround \ 230a9a25a2SRichard Hansen i18n \ 24b599bd93SRobert Mustacchi newlocale \ 25b599bd93SRobert Mustacchi nl_langinfo \ 26b599bd93SRobert Mustacchi priv_gettext \ 2744431c82SRobert Mustacchi qsort \ 28b599bd93SRobert Mustacchi random \ 29490fea6bSYuri Pankov regex \ 302209d3c8SRichard Lowe select \ 31cd62a92dSRobert Mustacchi stdio \ 32b599bd93SRobert Mustacchi strerror \ 33b599bd93SRobert Mustacchi symbols \ 34e56998eeSRobert Mustacchi threads \ 35b599bd93SRobert Mustacchi wcsrtombs \ 36b599bd93SRobert Mustacchi wctype 372d08521bSGarrett D'Amore 38fc2512cfSRobert MustacchiPROGS = \ 39fc2512cfSRobert Mustacchi aligned_alloc \ 404322dd90SRobert Mustacchi asprintf-14933 \ 41fc2512cfSRobert Mustacchi c11_threads \ 42fc2512cfSRobert Mustacchi c11_tss \ 43fc2512cfSRobert Mustacchi call_once \ 447dc9a163SRobert Mustacchi endian \ 4560b81b86SRobert Mustacchi env-7076 \ 46f52b16c6SYuri Pankov fnmatch \ 47d6bf1708SRobert Mustacchi memchr \ 4800efb5e1SYuri Pankov memset_s \ 49a547acf9SRichard Lowe posix_memalign \ 50804635d7SYuri Pankov printf-9511 \ 5149add8ecSRobert Mustacchi psignal-5097 \ 52fc2512cfSRobert Mustacchi quick_exit_order \ 53fc2512cfSRobert Mustacchi quick_exit_status \ 5400efb5e1SYuri Pankov set_constraint_handler_s \ 55efcfb316SYuri Pankov strcoll-strxfrm-6907 \ 56f2d34afaSRobert Mustacchi timespec_get \ 57f2d34afaSRobert Mustacchi wcsncasecmp \ 58f2d34afaSRobert Mustacchi wcsncasecmp-7344 \ 59eda3ef2dSRobert Mustacchi wcsncasecmp-7350 \ 60b7a77849SAndy Fiddaman uchar \ 61b7a77849SAndy Fiddaman utimes 62fc2512cfSRobert Mustacchi 63fc2512cfSRobert MustacchiSCRIPTS = \ 6449add8ecSRobert Mustacchi quick_exit \ 6549add8ecSRobert Mustacchi psignal 66fc2512cfSRobert Mustacchi 67fc2512cfSRobert MustacchiCPPFLAGS += -D_REENTRANT 68fc2512cfSRobert Mustacchi 69fc2512cfSRobert MustacchiPROGS32 = $(PROGS:%=%.32) 70afc62b4bSRobert MustacchiPROGS64 = \ 71afc62b4bSRobert Mustacchi $(PROGS:%=%.64) \ 72afc62b4bSRobert Mustacchi printf-6961.64 73fc2512cfSRobert Mustacchi 74fc2512cfSRobert Mustacchialigned_alloc.32 := LDLIBS += -lproc 75fc2512cfSRobert Mustacchialigned_alloc.64 := LDLIBS64 += -lproc 76a547acf9SRichard Loweposix_memalign.32 := LDLIBS += -lproc 77a547acf9SRichard Loweposix_memalign.64 := LDLIBS64 += -lproc 78fc2512cfSRobert Mustacchi 794322dd90SRobert Mustacchiasprintf-14933.32 := CSTD=$(GNU_C99) 804322dd90SRobert Mustacchiasprintf-14933.64 := CSTD=$(GNU_C99) 814322dd90SRobert Mustacchi 8200efb5e1SYuri Pankovmemset_s.32 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 8300efb5e1SYuri Pankovmemset_s.64 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 8400efb5e1SYuri Pankovset_constraint_handler_s.32 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 8500efb5e1SYuri Pankovset_constraint_handler_s.64 := CPPFLAGS += -D__STDC_WANT_LIB_EXT1__=1 8600efb5e1SYuri Pankov 87fc2512cfSRobert MustacchiROOTOPTDIR = $(ROOT)/opt/libc-tests/tests 88fc2512cfSRobert MustacchiROOTOPTPROGS = $(PROGS32:%=$(ROOTOPTDIR)/%) \ 89fc2512cfSRobert Mustacchi $(PROGS64:%=$(ROOTOPTDIR)/%) \ 90fc2512cfSRobert Mustacchi $(SCRIPTS:%=$(ROOTOPTDIR)/%) 91fc2512cfSRobert Mustacchi 92fc2512cfSRobert Mustacchiinclude $(SRC)/cmd/Makefile.cmd 93fc2512cfSRobert Mustacchi 94fc2512cfSRobert Mustacchiall := TARGET = all 95fc2512cfSRobert Mustacchiinstall := TARGET = install 96fc2512cfSRobert Mustacchiclean := TARGET = clean 97fc2512cfSRobert Mustacchiclobber := TARGET = clobber 98fc2512cfSRobert Mustacchilint := TARGET = lint 99fc2512cfSRobert Mustacchi 100fc2512cfSRobert Mustacchi.KEEP_STATE: 101fc2512cfSRobert Mustacchi 102fc2512cfSRobert Mustacchiinstall: $(SUBDIRS) $(ROOTOPTPROGS) 103fc2512cfSRobert Mustacchi 104fc2512cfSRobert Mustacchiall: $(SUBDIRS) $(PROGS32) $(PROGS64) 105fc2512cfSRobert Mustacchi 106fc2512cfSRobert Mustacchiclean lint: $(SUBDIRS) 107fc2512cfSRobert Mustacchi 108fc2512cfSRobert Mustacchi$(ROOTOPTPROGS): $(PROGS32) $(PROGS64) $(ROOTOPTDIR) 109fc2512cfSRobert Mustacchi 110fc2512cfSRobert Mustacchi$(ROOTOPTDIR): 111fc2512cfSRobert Mustacchi $(INS.dir) 112fc2512cfSRobert Mustacchi 113fc2512cfSRobert Mustacchi$(ROOTOPTDIR)/%: % 114fc2512cfSRobert Mustacchi $(INS.file) 115fc2512cfSRobert Mustacchi 116fc2512cfSRobert Mustacchi$(ROOTOPTDIR)/%: %.ksh 117fc2512cfSRobert Mustacchi $(INS.rename) 118fc2512cfSRobert Mustacchi 119fc2512cfSRobert Mustacchi%.64: %.c 1201919e1f7SRichard Lowe $(LINK64.c) -o $@ $< $(LDLIBS64) 121fc2512cfSRobert Mustacchi $(POST_PROCESS) 122fc2512cfSRobert Mustacchi 123fc2512cfSRobert Mustacchi%.32: %.c 1249c05409fSRichard Lowe $(LINK.c) -o $@ $< $(LDLIBS) 125fc2512cfSRobert Mustacchi $(POST_PROCESS) 126fc2512cfSRobert Mustacchi 127fc2512cfSRobert Mustacchiclobber: $(SUBDIRS) 128fc2512cfSRobert Mustacchi $(RM) $(PROGS32) $(PROGS64) 129fc2512cfSRobert Mustacchi 130fc2512cfSRobert Mustacchi$(SUBDIRS): FRC 131fc2512cfSRobert Mustacchi @cd $@; pwd; $(MAKE) $(TARGET) 132fc2512cfSRobert Mustacchi 133fc2512cfSRobert MustacchiFRC: 134