Lines Matching +full:x86_64 +full:- +full:6
4 # protoc plugins into target/<OS>/<ARCH>/protoc-gen-*.exe
6 # Usage: ./build-protoc.sh <OS> <ARCH> <TARGET>
8 # <TARGET> can be "protoc" or "protoc-gen-javalite". Supported <OS> <ARCH>
11 # cygwin windows x86_32 Requires: i686-w64-mingw32-gcc
12 # cygwin windows x86_64 Requires: x86_64-w64-mingw32-gcc
13 # linux linux aarch_64 Requires: g++-aarch64-linux-gnu
15 # linux linux x86_64
16 # linux windows x86_32 Requires: i686-w64-mingw32-gcc
17 # linux windows x86_64 Requires: x86_64-w64-mingw32-gcc
19 # macos osx x86_64
21 # mingw windows x86_64
36 protoc-gen-javalite)
67 if [ -z "$lineno" ]; then
80 # Usage: checkArch <path-to-protoc>
86 format="$(objdump -f "$1" | grep -o "file format .*$" | grep -o "[^ ]*$")"
89 host_machine="$(uname -m)";
91 assertEq $format "elf32-i386" $LINENO
92 elif [[ "$ARCH" == x86_64 ]]; then
93 assertEq $format "elf64-x86-64" $LINENO
95 assertEq $format "elf64-little" $LINENO
98 assertEq $format "elf64-s390" $LINENO
100 assertEq $format "elf64-big" $LINENO
104 assertEq $format "elf64-powerpcle" $LINENO
106 assertEq $format "elf64-little" $LINENO
114 assertEq $format "pei-i386" $LINENO
115 elif [[ "$ARCH" == x86_64 ]]; then
116 assertEq $format "pei-x86-64" $LINENO
122 format="$(file -b "$1" | grep -o "[^ ]*$")"
126 elif [[ "$ARCH" == x86_64 ]]; then
127 assertEq $format "x86_64" $LINENO
139 # Usage: checkDependencies <path-to-protoc>
143 dump_cmd='objdump -x '"$1"' | fgrep "DLL Name"'
146 host_machine="$(uname -m)";
149 white_list="linux-gate\.so\.1\|libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|ld-linux\.so\.2"
150 elif [[ "$ARCH" == x86_64 ]]; then
151 …white_list="linux-vdso\.so\.1\|libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|ld-linux-x86-64\.so\.2"
154 dump_cmd='objdump -p '"$1"' | grep NEEDED'
156 …white_list="linux-vdso64\.so\.1\|libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|libz\.so\.1\|ld64\.s…
159 dump_cmd='objdump -p '"$1"' | grep NEEDED'
161 …white_list="linux-vdso64\.so\.1\|libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|libz\.so\.1\|ld64\.s…
163 dump_cmd='objdump -p '"$1"' | grep NEEDED'
164 white_list="libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|ld-linux-aarch64\.so\.1"
167 dump_cmd='otool -L '"$1"' | fgrep dylib'
168 white_list="libz\.1\.dylib\|libstdc++\.6\.dylib\|libSystem\.B\.dylib"
170 if [[ -z "$white_list" || -z "$dump_cmd" ]]; then
171 fail "Unsupported platform $OS-$ARCH."
174 eval $dump_cmd | grep -i "$white_list" || fail "doesn't show any expected dependencies"
176 eval $dump_cmd | grep -i -v "$white_list"
190 CONFIGURE_ARGS="--disable-shared"
196 # Override the default value set in configure.ac that has '-g' which produces
198 CXXFLAGS="-DNDEBUG"
205 if [[ "$ARCH" == x86_64 ]]; then
206 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=x86_64-w64-mingw32"
208 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=i686-pc-mingw32"
217 assertEq "$ARCH" x86_64 $LINENO
220 if [[ "$ARCH" == x86_64 ]]; then
221 CXXFLAGS="$CXXFLAGS -m64"
223 CXXFLAGS="$CXXFLAGS -m32"
225 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=aarch64-linux-gnu"
227 CXXFLAGS="$CXXFLAGS -m64"
228 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=powerpc64le-linux-gnu"
230 CXXFLAGS="$CXXFLAGS -m64"
231 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=s390x-linux-gnu"
236 # Cross-compilation for Windows
238 if [[ "$ARCH" == x86_64 ]]; then
239 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=x86_64-w64-mingw32"
241 CONFIGURE_ARGS="$CONFIGURE_ARGS --host=i686-w64-mingw32"
251 CXXFLAGS="$CXXFLAGS -mmacosx-version-min=10.7"
252 if [[ "$ARCH" == x86_64 ]]; then
253 CXXFLAGS="$CXXFLAGS -m64"
255 CXXFLAGS="$CXXFLAGS -m32"
264 # -s to produce stripped binary.
267 LDFLAGS="$LDFLAGS -static-libgcc -static-libstdc++ -Wl,-Bstatic -lstdc++ -lpthread -s"
270 LDFLAGS="$LDFLAGS -static-libgcc -static-libstdc++ -s"
282 mkdir -p "$BUILD_DIR" && cd "$BUILD_DIR" &&
284 cd src && make $MAKE_TARGET -j8 &&
285 cd "$WORKING_DIR" && mkdir -p $(dirname $TARGET_FILE) &&
290 # Since Mac linker doesn't accept "-s", we need to run strip