Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
protobuf
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
protobuf
Commits
7b87f77a
Commit
7b87f77a
authored
May 13, 2016
by
Jisi Liu
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1521 from zhangkun83/master
Fine-tune build scripts and better documentation.
parents
325cc42e
04757db7
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
5 deletions
+23
-5
README.md
protoc-artifacts/README.md
+22
-4
build-protoc.sh
protoc-artifacts/build-protoc.sh
+1
-1
No files found.
protoc-artifacts/README.md
View file @
7b87f77a
...
...
@@ -22,6 +22,20 @@ The scripts only work under Unix-like environments, e.g., Linux, MacOSX, and
Cygwin or MinGW for Windows. Please see
``README.md``
of the Protobuf project
for how to set up the build environment.
## Building from a freshly checked-out source
If you just checked out the Protobuf source from github, you need to
generate the configure script. You also need to build the full project
first to generate
`pbconfig.h`
which would otherwise be reported
missing when you build protoc in the later steps. This needs to be
done only once.
Under the protobuf project directory:
```
$ ./autogen.sh && ./configure && make
```
## To install artifacts locally
The following command will install the
``protoc``
artifact to your local Maven repository.
```
...
...
@@ -43,7 +57,7 @@ Frequently used values are:
-
``os.detected.name``
:
``linux``
,
``osx``
,
``windows``
.
-
``os.detected.arch``
:
``x86_32``
,
``x86_64``
For example, Min
g
GW32 only ships with 32-bit compilers, but you can still build
For example, MinGW32 only ships with 32-bit compilers, but you can still build
32-bit protoc under 64-bit Windows, with the following command:
```
$ mvn install -Dos.detected.arch=x86_32
...
...
@@ -59,10 +73,14 @@ support. DO NOT close the staging repository until you have done the
deployment for all platforms. Currently the following platforms are supported:
-
Linux (x86_32 and x86_64)
-
Windows (x86_32 and x86_64) with
-
Cygwin
with MinGW compilers (both x86_32 and
x86_64)
-
MSYS with MinGW32 (x86_32
only
)
-
Cygwin
64 with MinGW compilers (
x86_64)
-
MSYS with MinGW32 (x86_32)
-
MacOSX (x86_32 and x86_64)
As for MSYS2/MinGW64 for Windows: protoc will build, but it insists on
adding a dependency of
`libwinpthread-1.dll`
, which isn't shipped with
Windows.
Use the following command to deploy artifacts for the host platform to a
staging repository.
```
...
...
@@ -113,7 +131,7 @@ stored:
<settings>
<servers>
<server>
<id>
ossrh
</id>
<id>
sonatype-nexus-staging
</id>
<username>
[username]
</username>
<password>
[password]
</password>
</server>
...
...
protoc-artifacts/build-protoc.sh
View file @
7b87f77a
...
...
@@ -212,7 +212,7 @@ export CXXFLAGS LDFLAGS
TARGET_FILE
=
target/protoc.exe
cd
"
$WORKING_DIR
"
/..
&&
./configure
$CONFIGURE_ARGS
&&
cd
src
&&
make clean
&&
make
google/protobuf/stubs/pbconfig.h
$MAKE_TARGET
&&
cd
src
&&
make clean
&&
make
$MAKE_TARGET
&&
cd
"
$WORKING_DIR
"
&&
mkdir
-p
target
&&
(
cp
../src/protoc
$TARGET_FILE
||
cp
../src/protoc.exe
$TARGET_FILE
)
||
exit
1
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment