tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Makefile.in (1592B)


      1 #
      2 # This Source Code Form is subject to the terms of the Mozilla Public
      3 # License, v. 2.0. If a copy of the MPL was not distributed with this
      4 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      5 
      6 include $(topsrcdir)/config/rules.mk
      7 
      8 ifdef COMPILE_ENVIRONMENT
      9 ifndef RELRHACK
     10 test-array$(DLL_SUFFIX) test-ctors$(DLL_SUFFIX): %$(DLL_SUFFIX): %.$(OBJ_SUFFIX) elfhack
     11 $(MKSHLIB) $(LDFLAGS) $< -nostartfiles
     12 @echo ===
     13 @echo === If you get failures below, please file a bug describing the error
     14 @echo === and your environment \(compiler and linker versions\), and
     15 @echo === provide the pre-elfhacked library as an attachment.
     16 @echo === Use --disable-elf-hack until this is fixed.
     17 @echo ===
     18 # Fail if the library doesn't have $(DT_TYPE) .dynamic info
     19 $(READELF) -d $@ | grep '\b$(DT_TYPE)\b'
     20 @rm -f $@.bak
     21 $(CURDIR)/elfhack -b -f $@
     22 # Fail if the backup file doesn't exist
     23 [ -f '$@.bak' ]
     24 # Fail if the new library doesn't contain less relocations
     25 [ $$($(READELF) -r $@.bak | wc -l) -gt $$($(READELF) -r $@ | wc -l) ]
     26 
     27 test-array$(DLL_SUFFIX) test-ctors$(DLL_SUFFIX): DSO_SONAME=$@
     28 test-array$(DLL_SUFFIX): DT_TYPE=INIT_ARRAY
     29 test-ctors$(DLL_SUFFIX): DT_TYPE=INIT
     30 
     31 libs:: test-array$(DLL_SUFFIX) test-ctors$(DLL_SUFFIX)
     32 
     33 .PRECIOUS: test-array$(DLL_SUFFIX) test-ctors$(DLL_SUFFIX)
     34 
     35 ifndef CROSS_COMPILE
     36 dummy: dummy.$(OBJ_SUFFIX)
     37 $(CC) -o $@ $^ $(LDFLAGS)
     38 
     39 libs:: dummy
     40 # Will either crash or return exit code 1 if elfhack is broken
     41 LD_PRELOAD=$(CURDIR)/test-array$(DLL_SUFFIX) $(CURDIR)/dummy
     42 LD_PRELOAD=$(CURDIR)/test-ctors$(DLL_SUFFIX) $(CURDIR)/dummy
     43 
     44 endif
     45 endif
     46 endif