- 
                Notifications
    You must be signed in to change notification settings 
- Fork 216
Add IceBox CMake files #266
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
| cerr << "invalid proxy" << endl; | ||
| return 1; | ||
| } | ||
| HelloPrx twoway{communicator, "hello:tcp -h localhost -p 10000:udp -h localhost -p 10000"}; | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should further simplify in a follow up PR and have IceBox/greeter, inline with Ice/greeter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could though we'll have to figure out what the behavior will be.
| #include "HelloI.h" | ||
|  | ||
| #include <Ice/Ice.h> | ||
| #include <iostream> | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest adding a blank like between Ice/IceStorm etc. headers and other system headers.
        
          
                cpp/IceBox/hello/README.md
              
                Outdated
          
        
      | In the second window, run the client: | ||
| To run this demo, open two terminal windows. In the first window: | ||
|  | ||
| **Linux/macOS:** | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't like this relative path to "library", where we don't even provide the actual library name.
That's not how we should recommend using/configuring/starting icebox.
I'd rather show including the directory in LD_LIBRARY_PATH/DYLD_LIBRARY_PATH/PATH before running IceBox, as in
On Linux:
LD_LIBRARY_PATH=./build icebox --Ice.Config=config.icebox| # | ||
| # The hello service | ||
| # | ||
| IceBox.Service.Hello=./HelloService:create --Ice.Config=config.service | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The downside of removing config.icebox + config.service is it's now unclear how to pass command-line options (such as --Ice.Config=...) to your IceBox service.
If we get rid of all config files, we should at least show an option such as:
icebox --IceBox.Service.Hello="HelloService:create --Ice.Trace.Dispatch"| **Windows:** | ||
|  | ||
| ```shell | ||
| set PATH=%PATH%;./build/Release | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would not use '/' in a Windows PATH. Does it actually work?
This PR adds CMake support to the IceBox/hello demo.
Due to the nature of CMake's support of multi-config generators there are two places the HelloService library may end up by default:
./build/and./build/Release. This causes a bit of havoc with the config file locations.Having 4 config files (most just full of superfluous config options) for this "simple" demo seems like a lot.
XXXadmintool to shutdown a service. We don't do this for the IceGrid demos, it's unnecessary here.IMO these changes make the demo much easier to understand and digest.