Print this page
    
OS-5192 need faster clock_gettime
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: Joshua M. Clulow <jmc@joyent.com>
Reviewed by: Ryan Zezeski <ryan@zinascii.com>
    
      
        | Split | 
	Close | 
      
      | Expand all | 
      | Collapse all | 
    
    
          --- old/usr/src/lib/libc/Makefile.targ
          +++ new/usr/src/lib/libc/Makefile.targ
   1    1  #
   2    2  # CDDL HEADER START
   3    3  #
   4    4  # The contents of this file are subject to the terms of the
   5    5  # Common Development and Distribution License (the "License").
   6    6  # You may not use this file except in compliance with the License.
   7    7  #
   8    8  # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9    9  # or http://www.opensolaris.org/os/licensing.
  10   10  # See the License for the specific language governing permissions
  11   11  # and limitations under the License.
  12   12  #
  13   13  # When distributing Covered Code, include this CDDL HEADER in each
  
    | 
      ↓ open down ↓ | 
    13 lines elided | 
    
      ↑ open up ↑ | 
  
  14   14  # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15  # If applicable, add the following below this CDDL HEADER, with the
  16   16  # fields enclosed by brackets "[]" replaced with your own identifying
  17   17  # information: Portions Copyright [yyyy] [name of copyright owner]
  18   18  #
  19   19  # CDDL HEADER END
  20   20  #
  21   21  #
  22   22  # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  23   23  # Use is subject to license terms.
       24 +# Copyright 2016 Joyent, Inc.
  24   25  #
  25   26  #
  26   27  
  27   28  # libc build rules
  28   29  
  29   30  #
  30   31  # This first rule picks up optimized sources for libc variants.
  31   32  #
  32   33  pics/%.o: $(OPTIMIZED_LIBCBASE)/gen/%.s
  33   34          $(BUILD.s)
  34   35          $(POST_PROCESS_O)
  35   36  
  36   37  pics/%.o: $(LIBCBASE)/crt/%.c
  37   38          $(COMPILE.c) -o $@ $<
  38   39          $(POST_PROCESS_O)
  39   40  
  40   41  pics/%.o: $(LIBCBASE)/crt/%.s
  41   42          $(BUILD.s)
  42   43          $(POST_PROCESS_O)
  43   44  
  44   45  pics/%.o: $(LIBCBASE)/gen/%.c
  45   46          $(COMPILE.c) -o $@ $<
  46   47          $(POST_PROCESS_O)
  47   48  
  48   49  pics/%.o: $(LIBCBASE)/gen/%.s
  49   50          $(BUILD.s)
  50   51          $(POST_PROCESS_O)
  51   52  
  52   53  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/gen/%.s
  53   54          $(BUILD.s)
  54   55          $(POST_PROCESS_O)
  55   56  
  56   57  pics/_stack_grow.o: $(LIBCBASE)/../$(TARGET_ARCH)/gen/_stack_grow.s
  57   58          $(BUILD.s) $(LIBCBASE)/../$(TARGET_ARCH)/gen/_stack_grow.s
  58   59          $(POST_PROCESS_O)
  59   60  
  60   61  pics/%.o: $(LIBCBASE)/fp/%.c
  61   62          $(COMPILE.c) -o $@ $<
  62   63          $(POST_PROCESS_O)
  63   64  
  64   65  pics/%.o: $(LIBCBASE)/../$(MACH)/fp/%.c
  65   66          $(COMPILE.c) -o $@ $<
  66   67          $(POST_PROCESS_O)
  67   68  
  68   69  pics/%.o: $(LIBCBASE)/fp/%.s
  69   70          $(BUILD.s)
  70   71          $(POST_PROCESS_O)
  71   72  
  72   73  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/fp/%.c
  73   74          $(COMPILE.c) -o $@ $<
  74   75          $(POST_PROCESS_O)
  75   76  
  76   77  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/fp/%.s
  77   78          $(BUILD.s)
  78   79          $(POST_PROCESS_O)
  79   80  
  80   81  pics/%.o: $(LIBCBASE)/sys/%.c
  81   82          $(COMPILE.c) -o $@ $<
  82   83          $(POST_PROCESS_O)
  83   84  
  84   85  pics/%.o: $(LIBCBASE)/../common/sys/%.s
  85   86          $(BUILD.s)
  
    | 
      ↓ open down ↓ | 
    52 lines elided | 
    
      ↑ open up ↑ | 
  
  86   87          $(POST_PROCESS_O)
  87   88  
  88   89  pics/%.o: $(LIBCBASE)/sys/%.s
  89   90          $(BUILD.s)
  90   91          $(POST_PROCESS_O)
  91   92  
  92   93  pics/%.o: $(LIBCBASE)/../$(MACH)/sys/%.s
  93   94          $(BUILD.s)
  94   95          $(POST_PROCESS_O)
  95   96  
       97 +pics/%.o: $(LIBCBASE)/../$(MACH)/sys/%.c
       98 +        $(COMPILE.c) -o $@ $<
       99 +        $(POST_PROCESS_O)
      100 +
  96  101  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/sys/%.c
  97  102          $(COMPILE.c) -o $@ $<
  98  103          $(POST_PROCESS_O)
  99  104  
 100  105  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/sys/%.s
 101  106          $(BUILD.s)
 102  107          $(POST_PROCESS_O)
 103  108  
 104  109  # rules to build large file aware objects (xxx64.o from xxx.s or xxx.c)
 105  110  
 106  111  pics/%64.o: $(LIBCBASE)/../common/sys/%.s
 107  112          $(BUILD.s)
 108  113          $(POST_PROCESS_O)
 109  114  
 110  115  pics/%64.o: $(LIBCBASE)/sys/%.s
 111  116          $(BUILD.s)
 112  117          $(POST_PROCESS_O)
 113  118  
 114  119  pics/%64.o: $(LIBCBASE)/gen/%.c
 115  120          $(COMPILE.c) -o $@ $<
 116  121          $(POST_PROCESS_O)
 117  122  
 118  123  pics/%64.o: $(LIBCBASE)/../port/gen/%.c
 119  124          $(COMPILE.c) -o $@ $<
 120  125          $(POST_PROCESS_O)
 121  126  
 122  127  pics/%64.o: $(LIBCBASE)/../port/sys/%.c
 123  128          $(COMPILE.c) -o $@ $<
 124  129          $(POST_PROCESS_O)
 125  130  
 126  131  pics/%64.o: $(LIBCBASE)/../port/print/%.c
 127  132          $(COMPILE.c) -o $@ $<
 128  133          $(POST_PROCESS_O)
 129  134  
 130  135  pics/%64.o: $(LIBCBASE)/../port/regex/%.c
 131  136          $(COMPILE.c) -DM_I18N_MB -DI18N \
 132  137          -I$(LIBCBASE)/../port/regex \
 133  138          -I$(LIBCBASE)/../port/gen -o $@ $<
 134  139          $(POST_PROCESS_O)
 135  140  
 136  141  pics/%64.o: $(LIBCBASE)/../port/stdio/%.c
 137  142          $(COMPILE.c) -o $@ $<
 138  143          $(POST_PROCESS_O)
 139  144  
 140  145  pics/%_w.o: $(LIBCBASE)/../port/stdio/%.c
 141  146          $(COMPILE.c) -o $@ $<
 142  147          $(POST_PROCESS_O)
 143  148  
 144  149  pics/%_w.o: $(LIBCBASE)/../port/print/%.c
 145  150          $(COMPILE.c) -o $@ $<
 146  151          $(POST_PROCESS_O)
 147  152  
 148  153  pics/%_pos.o: $(LIBCBASE)/../port/i18n/%.c
 149  154          $(COMPILE.c) -o $@ $<
 150  155          $(POST_PROCESS_O)
 151  156  
 152  157  pics/%_sbyte.o: $(LIBCBASE)/../port/i18n/%.c
 153  158          $(COMPILE.c) -o $@ $<
 154  159          $(POST_PROCESS_O)
 155  160  
 156  161  pics/%_possbyte.o: $(LIBCBASE)/../port/i18n/%.c
 157  162          $(COMPILE.c) -o $@ $<
 158  163          $(POST_PROCESS_O)
 159  164  
 160  165  pics/%_longlong.o: $(LIBCBASE)/../port/i18n/%.c
 161  166          $(COMPILE.c) -o $@ $<
 162  167          $(POST_PROCESS_O)
 163  168  
 164  169  # libc build rules for objects built from "portable" source in ../port
 165  170  
 166  171  pics/%.o: $(LIBCBASE)/../port/fp/%.c
 167  172          $(COMPILE.c) \
 168  173          -I$(LIBCBASE)/../port/fp -o $@ $<
 169  174          $(POST_PROCESS_O)
 170  175  
 171  176  pics/%.o: $(LIBCBASE)/../port/i18n/%.c
 172  177          $(COMPILE.c) \
 173  178          -I$(LIBCBASE)/../port/i18n -o $@ $<
 174  179          $(POST_PROCESS_O)
 175  180  
 176  181  # gen rules
 177  182  pics/%.o %.o: $(LIBCBASE)/../port/gen/%.c
 178  183          $(COMPILE.c) -o $@ $<
 179  184          $(POST_PROCESS_O)
 180  185  
 181  186  # locale rules
 182  187  pics/%.o %.o: $(LIBCBASE)/../port/locale/%.c
 183  188          $(COMPILE.c) -o $@ $<
 184  189          $(POST_PROCESS_O)
 185  190  
 186  191  # print rules
 187  192  pics/%.o: $(LIBCBASE)/../port/print/%.c
 188  193          $(COMPILE.c) -o $@ $<
 189  194          $(POST_PROCESS_O)
 190  195  
 191  196  # regex rules
 192  197  pics/%.o: $(LIBCBASE)/../port/regex/%.c
 193  198          $(COMPILE.c) -DM_I18N_MB -DI18N \
 194  199          -I$(LIBCBASE)/../port/regex \
 195  200          -I$(LIBCBASE)/../port/gen -o $@ $<
 196  201          $(POST_PROCESS_O)
 197  202  
 198  203  # stdio rules
 199  204  pics/%.o: $(LIBCBASE)/../port/stdio/%.c
 200  205          $(COMPILE.c) -o $@ $<
 201  206          $(POST_PROCESS_O)
 202  207  
 203  208  # c89 print, stdio rules
 204  209  pics/%_c89.o: $(LIBCBASE)/../port/print/%.c
 205  210          $(COMPILE.c) -o $@ $<
 206  211          $(POST_PROCESS_O)
 207  212  
 208  213  pics/%_c89.o: $(LIBCBASE)/../port/stdio/%.c
 209  214          $(COMPILE.c) -o $@ $<
 210  215          $(POST_PROCESS_O)
 211  216  
 212  217  # aio rules
 213  218  pics/%.o: $(LIBCBASE)/../port/aio/%.c
 214  219          $(COMPILE.c) -o $@ $<
 215  220          $(POST_PROCESS_O)
 216  221  
 217  222  # rt rules
 218  223  pics/%.o: $(LIBCBASE)/../port/rt/%.c
 219  224          $(COMPILE.c) -o $@ $<
 220  225          $(POST_PROCESS_O)
 221  226  
 222  227  # tpool rules
 223  228  pics/%.o: $(LIBCBASE)/../port/tpool/%.c
 224  229          $(COMPILE.c) -o $@ $<
 225  230          $(POST_PROCESS_O)
 226  231  
 227  232  # threads rules
 228  233  pics/%.o: $(LIBCBASE)/../port/threads/%.c
 229  234          $(COMPILE.c) -o $@ $<
 230  235          $(POST_PROCESS_O)
 231  236  
 232  237  pics/%.o: $(LIBCBASE)/threads/%.c
 233  238          $(COMPILE.c) -o $@ $<
 234  239          $(POST_PROCESS_O)
 235  240  
 236  241  pics/%.o: $(LIBCBASE)/threads/%.s
 237  242          $(BUILD.s)
 238  243          $(POST_PROCESS_O)
 239  244  
 240  245  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/threads/%.c
 241  246          $(COMPILE.c) -o $@ $<
 242  247          $(POST_PROCESS_O)
 243  248  
 244  249  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/threads/%.s
 245  250          $(BUILD.s)
 246  251          $(POST_PROCESS_O)
 247  252  
 248  253  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/unwind/%.c
 249  254          $(COMPILE.c) -o $@ $<
 250  255          $(POST_PROCESS_O)
 251  256  
 252  257  pics/%.o: $(LIBCBASE)/../$(TARGET_ARCH)/unwind/%.s
 253  258          $(BUILD.s)
 254  259          $(POST_PROCESS_O)
 255  260  
 256  261  pics/%.o: $(LIBCBASE)/../port/unwind/%.c
 257  262          $(COMPILE.c) -o $@ $<
 258  263          $(POST_PROCESS_O)
 259  264  
 260  265  pics/%.o: $(LIBCBASE)/../$(MACH)/unwind/%.s
 261  266          $(BUILD.s)
 262  267          $(POST_PROCESS_O)
 263  268  
 264  269  pics/%.o: $(LIBCBASE)/../port/sys/%.c
 265  270          $(COMPILE.c) -o $@ $<
 266  271          $(POST_PROCESS_O)
 267  272  
 268  273  pics/%.o: $(LIBCBASE)/../../common/common/%.c
 269  274          $(COMPILE.c) -o $@ $<
 270  275          $(POST_PROCESS_O)
 271  276  
 272  277  pics/%.o: $(LIBCBASE)/$(CRTSRCS)/%.s
 273  278          $(BUILD.s)
 274  279          $(POST_PROCESS_O)
 275  280  
 276  281  # $(SRC)/common rules
 277  282  pics/%.o: $(SRC)/common/atomic/$(TARGETMACH)/%.s
 278  283          $(BUILD.s)
 279  284          $(POST_PROCESS_O)
 280  285  
 281  286  $(COMOBJS:%=pics/%): $(SRC)/common/util/$$(@F:.o=.c)
 282  287          $(COMPILE.c) -o $@ $(SRC)/common/util/$(@F:.o=.c)
 283  288          $(POST_PROCESS_O)
 284  289  
 285  290  $(XATTROBJS:%=pics/%): $(SRC)/common/xattr/$$(@F:.o=.c)
 286  291          $(COMPILE.c) -o $@ $(SRC)/common/xattr/$(@F:.o=.c)
 287  292          $(POST_PROCESS_O)
 288  293  
 289  294  $(DTRACEOBJS:%=pics/%): $(SRC)/common/dtrace/$$(@F:.o=.c)
 290  295          $(COMPILE.c) -o $@ $(SRC)/common/dtrace/$(@F:.o=.c)
 291  296          $(POST_PROCESS_O)
 292  297  
 293  298  $(UNICODEOBJS:%=pics/%): $(SRC)/common/unicode/$$(@F:.o=.c)
 294  299          $(COMPILE.c) -o $@ $(SRC)/common/unicode/$(@F:.o=.c)
 295  300          $(POST_PROCESS_O)
 296  301  
 297  302  $(CHACHAOBJS:%=pics/%): $(SRC)/common/crypto/chacha/$$(@F:.o=.c)
 298  303          $(COMPILE.c) -I$(SRC)/common/crypto/chacha -DKEYSTREAM_ONLY \
 299  304              -o $@ $(SRC)/common/crypto/chacha/$(@F:.o=.c)
 300  305          $(POST_PROCESS_O)
 301  306  
 302  307  # DTrace rules
 303  308  pics/%.o: $(LIBCBASE)/../port/threads/%.d $(THREADSOBJS:%=pics/%)
 304  309          $(COMPILE.d) -C -xlazyload -s $< -o $@ $(THREADSOBJS:%=pics/%)
 305  310          $(POST_PROCESS_O)
 306  311  
 307  312  include $(SRC)/lib/Makefile.targ
  
    | 
      ↓ open down ↓ | 
    202 lines elided | 
    
      ↑ open up ↑ | 
  
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX